aboutsummaryrefslogtreecommitdiff
path: root/src/query_search.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/query_search.c')
-rw-r--r--src/query_search.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/query_search.c b/src/query_search.c
index 17755555..3c5832e1 100644
--- a/src/query_search.c
+++ b/src/query_search.c
@@ -598,6 +598,8 @@ static gpointer query_search_folder_func(gpointer data)
debug_print("query_search_folder_func start\n");
+ g_async_queue_ref(qdata->queue);
+
mlist = folder_item_get_msg_list(qdata->item, TRUE);
qdata->total = g_slist_length(mlist);
@@ -657,6 +659,7 @@ static gpointer query_search_folder_func(gpointer data)
}
procmsg_msg_list_free(mlist);
+ g_async_queue_unref(qdata->queue);
qdata->flag = 1;
g_main_context_wakeup(NULL);
@@ -719,7 +722,7 @@ static void query_search_folder(FolderItem *item)
g_thread_join(thread);
debug_print("query_search_folder: thread exited\n");
- g_async_queue_free(data.queue);
+ g_async_queue_unref(data.queue);
#else /* !USE_THREADS */
query_search_folder_func(&data);
#endif