diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2009-12-04 02:30:05 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2009-12-04 02:30:05 +0000 |
commit | 14a73bcd6d4642c9ab03239a32a17bb47ef451ba (patch) | |
tree | 6d44859a7604f76884c0a940e2066c7206342999 | |
parent | 6541ef47ae8d14888161157c219ff36b90872274 (diff) |
disable sort while filtering to prohibit a warning.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@2363 ee746299-78ed-0310-b773-934348b2243d
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | src/summaryview.c | 10 |
2 files changed, 16 insertions, 0 deletions
@@ -1,3 +1,9 @@ +2009-12-04 + + * src/summaryview.c: summary_filter_real(): disable sort while + filtering to prohibit 'The model has been modified from within + gtk_tree_selection_selected_foreach.' warning. + 2009-11-26 * version 3.0.0beta3 diff --git a/src/summaryview.c b/src/summaryview.c index c7be1437..6ad83677 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -4591,6 +4591,8 @@ static void summary_filter_real(SummaryView *summaryview, gboolean selected_only) { GList *rows; + FolderSortKey sort_key; + FolderSortType sort_type; if (!summaryview->folder_item) return; @@ -4604,6 +4606,11 @@ static void summary_filter_real(SummaryView *summaryview, main_window_cursor_wait(summaryview->mainwin); GTK_EVENTS_FLUSH(); + sort_key = summaryview->folder_item->sort_key; + sort_type = summaryview->folder_item->sort_type; + if (sort_key != SORT_BY_NONE) + summary_sort(summaryview, SORT_BY_NONE, SORT_ASCENDING); + summaryview->filtered = 0; summaryview->flt_count = 0; @@ -4621,6 +4628,9 @@ static void summary_filter_real(SummaryView *summaryview, func, summaryview); } + if (sort_key != SORT_BY_NONE) + summary_sort(summaryview, sort_key, sort_type); + summary_unlock(summaryview); if (prefs_common.immediate_exec) |