evolution-exchange r1696 - in trunk: . camel
- From: abharath svn gnome org
- To: svn-commits-list gnome org
- Subject: evolution-exchange r1696 - in trunk: . camel
- Date: Mon, 21 Jul 2008 09:46:30 +0000 (UTC)
Author: abharath
Date: Mon Jul 21 09:46:30 2008
New Revision: 1696
URL: http://svn.gnome.org/viewvc/evolution-exchange?rev=1696&view=rev
Log:
2008-07-21 Sankar P <psankar novell com>
Fixes Exchange related crashes due to DB Summary merge
* camel/camel-exchange-folder.c: (search_by_expression),
(camel_exchange_folder_construct):
* camel/camel-exchange-search.c: (exchange_body_contains):
Modified:
trunk/ChangeLog
trunk/camel/camel-exchange-folder.c
trunk/camel/camel-exchange-search.c
Modified: trunk/camel/camel-exchange-folder.c
==============================================================================
--- trunk/camel/camel-exchange-folder.c (original)
+++ trunk/camel/camel-exchange-folder.c Mon Jul 21 09:46:30 2008
@@ -45,6 +45,7 @@
#include <camel/camel-session.h>
#include <camel/camel-stream-filter.h>
#include <camel/camel-stream-mem.h>
+#include <camel/camel-folder-summary.h>
static CamelOfflineFolderClass *parent_class = NULL;
@@ -470,7 +471,7 @@
camel_folder_search_set_folder (search, folder);
summary = camel_folder_get_summary (folder);
camel_folder_search_set_summary (search, summary);
- matches = camel_folder_search_execute_expression (search, expression, ex);
+ matches = camel_folder_search_search (search, expression, NULL, ex);
camel_folder_free_summary (folder, summary);
if (matches) {
@@ -1082,8 +1083,8 @@
camel_folder_summary_reload_from_db (folder->summary, ex);
for (i = 0; i < summary->len; i++) {
- info = summary->pdata[i];
- uids->pdata[i] = (char *)camel_message_info_uid (info);
+ uids->pdata[i] = g_strdup(summary->pdata[i]);
+ info = camel_folder_summary_uid (folder->summary, uids->pdata[i]);
flags->data[i] = ((CamelMessageInfoBase *)info)->flags & CAMEL_EXCHANGE_SERVER_FLAGS;
hrefs->pdata[i] = ((CamelExchangeMessageInfo *)info)->href;
//camel_tag_list_free (&((CamelMessageInfoBase *)info)->user_tags);
Modified: trunk/camel/camel-exchange-search.c
==============================================================================
--- trunk/camel/camel-exchange-search.c (original)
+++ trunk/camel/camel-exchange-search.c Mon Jul 21 09:46:30 2008
@@ -26,6 +26,7 @@
#include <string.h>
#include <camel/camel-offline-store.h>
+#include <camel/camel-folder-summary.h>
#include "camel-exchange-search.h"
#include "camel-exchange-folder.h"
@@ -99,8 +100,7 @@
r->value.bool = TRUE;
else {
for (i = 0; i < s->summary->len; i++) {
- CamelMessageInfo *info = s->summary->pdata[i];
- g_ptr_array_add (r->value.ptrarray, (char *)camel_message_info_uid (info));
+ g_ptr_array_add (r->value.ptrarray, s->summary->pdata[i]);
}
}
return r;
@@ -140,8 +140,8 @@
uid_hash = g_hash_table_new (g_str_hash, g_str_equal);
for (i = 0; i < s->summary->len; i++) {
- info = s->summary->pdata[i];
- g_hash_table_insert (uid_hash, (char *)camel_message_info_uid (info), info);
+ info = camel_folder_summary_uid (s->folder->summary, s->summary->pdata[i]);
+ g_hash_table_insert (uid_hash, s->summary->pdata[i], info);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]