talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 5b2da67e96294dd8906d5231e1aa8dc0375737cc
parent d8c5586abe9e3657f28e2fc002788af3f7de5a45
Author: Colin Leroy <colin@colino.net>
Date:   Tue,  8 Apr 2014 16:13:04 +0200

Fix bug #3055, "Claws segfaults when cancelling a sticky search
after changing folder"

Diffstat:
Msrc/gtk/quicksearch.c | 9+++++++++
Msrc/summaryview.c | 1-
2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/gtk/quicksearch.c b/src/gtk/quicksearch.c @@ -167,10 +167,19 @@ static void quicksearch_invoke_execute(QuickSearch *quicksearch, gboolean run_on gboolean quicksearch_run_on_folder(QuickSearch* quicksearch, FolderItem *folderItem, MsgInfoList **result) { if (quicksearch_has_sat_predicate(quicksearch)) { + gboolean was_running = quicksearch_is_running(quicksearch); gboolean searchres; + + if (!was_running) + quicksearch_set_running(quicksearch, TRUE); + main_window_cursor_wait(mainwindow_get_mainwindow()); searchres = advsearch_search_msgs_in_folders(quicksearch->asearch, result, folderItem, FALSE); main_window_cursor_normal(mainwindow_get_mainwindow()); + + if (!was_running) + quicksearch_set_running(quicksearch, FALSE); + if (quicksearch->want_reexec) { advsearch_set(quicksearch->asearch, quicksearch->request.type, ""); } diff --git a/src/summaryview.c b/src/summaryview.c @@ -1379,7 +1379,6 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item) if (!quicksearch_has_sat_predicate(summaryview->quicksearch)) { debug_print("search cancelled!\n"); - printf("search cancelled!\n"); summary_thaw(summaryview); STATUSBAR_POP(summaryview->mainwin); main_window_cursor_normal(summaryview->mainwin);