handle a null return from search_by_expression, for bug #33786.

2003-03-07  Not Zed  <NotZed@Ximian.com>

        * camel-vee-folder.c (vee_search_by_expression): handle a null
        return from search_by_expression, for bug #33786.

svn path=/trunk/; revision=20215
This commit is contained in:
Not Zed
2003-03-07 03:38:45 +00:00
committed by Michael Zucci
parent 647671b615
commit bc03ae066b
2 changed files with 16 additions and 8 deletions

View File

@ -1,3 +1,8 @@
2003-03-07 Not Zed <NotZed@Ximian.com>
* camel-vee-folder.c (vee_search_by_expression): handle a null
return from search_by_expression, for bug #33786.
2003-03-06 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-utils.c (imap_next_word):

View File

@ -686,16 +686,19 @@ vee_search_by_expression(CamelFolder *folder, const char *expression, CamelExcep
/* make sure we only search each folder once - for unmatched folder to work right */
if (g_hash_table_lookup(searched, f) == NULL) {
camel_vee_folder_hash_folder(f, hash);
matches = camel_folder_search_by_expression(f, expression, ex);
for (i = 0; i < matches->len; i++) {
char *uid = matches->pdata[i], *vuid;
/* FIXME: shouldn't ignore search exception */
matches = camel_folder_search_by_expression(f, expression, NULL);
if (matches) {
for (i = 0; i < matches->len; i++) {
char *uid = matches->pdata[i], *vuid;
vuid = g_malloc(strlen(uid)+9);
memcpy(vuid, hash, 8);
strcpy(vuid+8, uid);
g_ptr_array_add(result, vuid);
vuid = g_malloc(strlen(uid)+9);
memcpy(vuid, hash, 8);
strcpy(vuid+8, uid);
g_ptr_array_add(result, vuid);
}
camel_folder_search_free(f, matches);
}
camel_folder_search_free(f, matches);
g_hash_table_insert(searched, f, f);
}
node = g_list_next(node);