{ "A_GOTO_NEXT", N_("Go to Next Unread Message") },
{ "A_IGNORE_THREAD", N_("Ignore thread") },
{ "A_PRINT", N_("Print") },
- { "A_LEARN_SPAM", N_("Learn Spam") },
- { "A_LEARN_HAM", N_("Learn Ham") },
+ { "A_LEARN_SPAM", N_("Learn Spam or Ham") },
{ "A_SEND", N_("Send Message") },
{ "A_SENDL", N_("Put into queue folder and send later") },
toolbar_config[source].item_list =
g_slist_remove(toolbar_config[source].item_list, item);
- if (item->file)
- g_free(item->file);
- if (item->text)
- g_free(item->text);
+ g_free(item->file);
+ g_free(item->text);
g_free(item);
}
g_slist_free(toolbar_config[source].item_list);
case TOOLBAR_MSGVIEW:
msgview = (MessageView*)toolbar_item->parent;
+ msgview->updating = TRUE;
summary_select_prev_unread(msgview->mainwin->summaryview);
+ msgview->updating = FALSE;
+
+ if (msgview->deferred_destroy) {
+ debug_print("messageview got away!\n");
+ messageview_destroy(msgview);
+ return;
+ }
/* Now we need to update the messageview window */
if (msgview->mainwin->summaryview->selected) {
case TOOLBAR_MSGVIEW:
msgview = (MessageView*)toolbar_item->parent;
+ msgview->updating = TRUE;
summary_select_next_unread(msgview->mainwin->summaryview);
-
+ msgview->updating = FALSE;
+
+ if (msgview->deferred_destroy) {
+ debug_print("messageview got away!\n");
+ messageview_destroy(msgview);
+ return;
+ }
+
/* Now we need to update the messageview window */
if (msgview->mainwin->summaryview->selected) {
GtkCTree *ctree = GTK_CTREE(msgview->mainwin->summaryview->ctree);
{ A_IGNORE_THREAD, toolbar_ignore_thread_cb },
{ A_PRINT, toolbar_print_cb },
{ A_LEARN_SPAM, toolbar_learn_cb },
- { A_LEARN_HAM, toolbar_learn_cb },
{ A_SEND, toolbar_send_cb },
{ A_SENDL, toolbar_send_later_cb },
while (entry_list != NULL) {
Entry *e = (Entry*) entry_list->data;
- if (e)
- g_free(e);
+ g_free(e);
entry_list = g_slist_remove(entry_list, e);
}