summaryrefslogtreecommitdiffstats
path: root/meta-gnome/recipes-gnome/eds/evolution-data-server/new-contact-fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-gnome/recipes-gnome/eds/evolution-data-server/new-contact-fix.patch')
-rw-r--r--meta-gnome/recipes-gnome/eds/evolution-data-server/new-contact-fix.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/meta-gnome/recipes-gnome/eds/evolution-data-server/new-contact-fix.patch b/meta-gnome/recipes-gnome/eds/evolution-data-server/new-contact-fix.patch
new file mode 100644
index 000000000..22c293dda
--- /dev/null
+++ b/meta-gnome/recipes-gnome/eds/evolution-data-server/new-contact-fix.patch
@@ -0,0 +1,23 @@
1When contacts called for the 1st time, adding new contact always failed but
2worked after restart. The reason is e-addressbook-factory used to handle
3addressbook leads a segmentation fault. Root cause is that factory would create
4the data base if not exist, but use it without proper initialization.
5
6This patch fix it.
7
8Upstream-Status: Submitted
9
10Signed-off-by: Edwin Zhai <edwin.zhai@intel.com>
11Index: git/addressbook/backends/file/e-book-backend-file.c
12===================================================================
13--- git.orig/addressbook/backends/file/e-book-backend-file.c 2010-10-20 16:14:31.000000000 +0800
14+++ git/addressbook/backends/file/e-book-backend-file.c 2010-10-22 14:11:47.000000000 +0800
15@@ -1217,6 +1217,8 @@
16 EContact *contact = NULL;
17 EBookBackendSyncStatus status;
18
19+ /* Initialize file_db, or else following do_create cause seg fault */
20+ bf->priv->file_db = db;
21 status = do_create (bf, XIMIAN_VCARD, &contact);
22 if (status != GNOME_Evolution_Addressbook_Success)
23 g_warning ("Cannot create default contact: %d", status);