From: Milan Crha Date: Fri, 11 Mar 2011 13:21:30 +0000 (+0100) Subject: Bug #643748 - Slow message_location search rule with maildir accounts X-Git-Tag: upstream/3.7.4~2183 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9713686c5ec8dcb3f702c53caadc6a7760790c61;p=platform%2Fupstream%2Fevolution-data-server.git Bug #643748 - Slow message_location search rule with maildir accounts --- diff --git a/camel/camel-folder-search.c b/camel/camel-folder-search.c index 7cfe9eb..0c1a575 100644 --- a/camel/camel-folder-search.c +++ b/camel/camel-folder-search.c @@ -1828,21 +1828,14 @@ read_uid_callback (gpointer ref, gint ncol, gchar ** cols, gchar **name) static ESExpResult * search_message_location (struct _ESExp *f, gint argc, struct _ESExpResult **argv, CamelFolderSearch *search) { - CamelStore *parent_store; ESExpResult *r; gboolean same = FALSE; - parent_store = camel_folder_get_parent_store (search->folder); - if (argc == 1 && argv[0]->type == ESEXP_RES_STRING) { - if (argv[0]->value.string && search->folder && parent_store && camel_folder_get_full_name (search->folder)) { - /* FIXME Pass a GCancellable */ - CamelFolderInfo *fi = camel_store_get_folder_info_sync (parent_store, camel_folder_get_full_name (search->folder), 0, NULL, NULL); - if (fi) { - same = g_str_equal (fi->uri ? fi->uri : "", argv[0]->value.string); + if (argv[0]->value.string && search->folder) { + const gchar *furi = camel_folder_get_uri (search->folder); - camel_store_free_folder_info (parent_store, fi); - } + same = g_str_equal (furi ? furi : "", argv[0]->value.string); } }