diff --git a/.cvsignore b/.cvsignore index 3e456f2..63b68c5 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -evolution-data-server-1.10.1.tar.bz2 +evolution-data-server-1.11.2.tar.bz2 diff --git a/evolution-data-server-1.10.1-apop-auth-vulnerability.patch b/evolution-data-server-1.10.1-apop-auth-vulnerability.patch deleted file mode 100644 index c49fd40..0000000 --- a/evolution-data-server-1.10.1-apop-auth-vulnerability.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- evolution-data-server-1.10.1/camel/providers/pop3/camel-pop3-store.c.apop-auth-vulnerability 2007-04-09 08:42:37.000000000 -0400 -+++ evolution-data-server-1.10.1/camel/providers/pop3/camel-pop3-store.c 2007-04-30 16:42:12.000000000 -0400 -@@ -34,6 +34,7 @@ - #include - #include - #include -+#include - - #include "camel-operation.h" - -@@ -489,7 +490,21 @@ - } else if (strcmp(service->url->authmech, "+APOP") == 0 && store->engine->apop) { - char *secret, md5asc[33], *d; - unsigned char md5sum[16], *s; -- -+ -+ d = store->engine->apop; -+ -+ while (*d != '\0') { -+ if (!isascii((int)*d)) { -+ -+ camel_exception_setv (ex, CAMEL_EXCEPTION_SERVICE_URL_INVALID, -+ _("Unable to connect to POP server %s: "), -+ CAMEL_SERVICE (store)->url->host); -+ -+ return FALSE; -+ } -+ d++; -+ } -+ - secret = g_alloca(strlen(store->engine->apop)+strlen(service->url->passwd)+1); - sprintf(secret, "%s%s", store->engine->apop, service->url->passwd); - md5_get_digest(secret, strlen (secret), md5sum); diff --git a/evolution-data-server-1.10.1-e-source-group.patch b/evolution-data-server-1.10.1-e-source-group.patch deleted file mode 100644 index 19a5296..0000000 --- a/evolution-data-server-1.10.1-e-source-group.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- evolution-data-server-1.10.1/libedataserver/e-source-group.c.e-source-group 2007-05-07 15:28:33.000000000 -0400 -+++ evolution-data-server-1.10.1/libedataserver/e-source-group.c 2007-05-07 15:28:49.000000000 -0400 -@@ -230,6 +230,7 @@ - - if (new_source == NULL) { - g_object_unref (new); -+ new = NULL; - goto done; - } - e_source_group_add_source (new, new_source, -1); diff --git a/evolution-data-server-1.11.2-implicit-function-declarations.patch b/evolution-data-server-1.11.2-implicit-function-declarations.patch new file mode 100644 index 0000000..bfa4e54 --- /dev/null +++ b/evolution-data-server-1.11.2-implicit-function-declarations.patch @@ -0,0 +1,10 @@ +--- evolution-data-server-1.11.2/calendar/libical/src/libical/icalvalue.c.implicit-function-declarations 2007-05-18 11:37:00.000000000 -0400 ++++ evolution-data-server-1.11.2/calendar/libical/src/libical/icalvalue.c 2007-05-18 11:38:53.000000000 -0400 +@@ -47,6 +47,7 @@ + #include /* for atoi and atof */ + #include /* for SHRT_MAX */ + #include ++#include /* for isspace and isdigit */ + + #ifdef WIN32 + #define snprintf _snprintf diff --git a/evolution-data-server-1.8.1-warn-unused-variable.patch b/evolution-data-server-1.8.1-warn-unused-variable.patch deleted file mode 100644 index 98293ba..0000000 --- a/evolution-data-server-1.8.1-warn-unused-variable.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- evolution-data-server-1.8.1/camel/providers/groupwise/camel-groupwise-folder.c.warn-unused-variable 2006-09-02 02:36:55.000000000 -0400 -+++ evolution-data-server-1.8.1/camel/providers/groupwise/camel-groupwise-folder.c 2006-10-08 22:09:18.000000000 -0400 -@@ -1137,7 +1137,6 @@ - CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER(folder); - CamelGroupwiseStorePrivate *priv = gw_store->priv; - EGwConnection *cnc = cnc_lookup (priv); -- GSList *attach_list = NULL; - guint32 item_status, status_flags = 0; - CamelFolderChangeInfo *changes = NULL; - gboolean exists = FALSE; -@@ -1369,7 +1368,6 @@ - { - CamelGroupwiseMessageInfo *mi = NULL; - CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE (folder->parent_store); -- GSList *attach_list = NULL; - guint32 item_status, status_flags = 0; - CamelFolderChangeInfo *changes = NULL; - gboolean exists = FALSE; ---- evolution-data-server-1.8.1/camel/camel-stream-vfs.c.warn-unused-variable 2006-09-02 02:36:54.000000000 -0400 -+++ evolution-data-server-1.8.1/camel/camel-stream-vfs.c 2006-10-08 22:09:18.000000000 -0400 -@@ -121,7 +121,6 @@ - { - CamelStreamVFS *stream_vfs; - off_t offset; -- GnomeVFSResult result; - - if (!handle) - return NULL; diff --git a/evolution-data-server-1.9.1-kill-ememory.patch b/evolution-data-server-1.9.1-kill-ememory.patch index 172490f..399daf6 100644 --- a/evolution-data-server-1.9.1-kill-ememory.patch +++ b/evolution-data-server-1.9.1-kill-ememory.patch @@ -1,5 +1,5 @@ ---- evolution-data-server-1.9.1/camel/camel-text-index.c.kill-ememory 2006-10-25 23:02:26.000000000 -0400 -+++ evolution-data-server-1.9.1/camel/camel-text-index.c 2006-10-25 23:03:35.000000000 -0400 +--- evolution-data-server-1.11.2/camel/camel-text-index.c.kill-ememory 2007-05-09 00:09:33.000000000 -0400 ++++ evolution-data-server-1.11.2/camel/camel-text-index.c 2007-05-18 10:59:21.000000000 -0400 @@ -70,7 +70,7 @@ struct _CamelTextIndexNamePrivate { GString *buffer; @@ -45,9 +45,9 @@ p->nameid = nameid; return idn; ---- evolution-data-server-1.9.1/camel/camel-mime-parser.c.kill-ememory 2006-04-12 15:14:13.000000000 -0400 -+++ evolution-data-server-1.9.1/camel/camel-mime-parser.c 2006-10-25 23:03:35.000000000 -0400 -@@ -122,7 +122,7 @@ +--- evolution-data-server-1.11.2/camel/camel-mime-parser.c.kill-ememory 2007-05-09 00:09:34.000000000 -0400 ++++ evolution-data-server-1.11.2/camel/camel-mime-parser.c 2007-05-18 10:59:21.000000000 -0400 +@@ -120,7 +120,7 @@ camel_mime_parser_state_t savestate; /* state at invocation of this part */ #ifdef MEMPOOL @@ -56,7 +56,7 @@ #endif struct _camel_header_raw *headers; /* headers for this part */ -@@ -1001,7 +1001,8 @@ +@@ -999,7 +999,8 @@ s->parts = h->parent; g_free(h->boundary); #ifdef MEMPOOL @@ -66,7 +66,7 @@ #else camel_header_raw_clear(&h->headers); #endif -@@ -1109,20 +1110,16 @@ +@@ -1107,20 +1108,16 @@ content = strchr(header, ':'); if (content) { register int len; @@ -90,7 +90,7 @@ n->offset = offset; -@@ -1180,7 +1177,7 @@ +@@ -1178,7 +1175,7 @@ h = g_malloc0(sizeof(*h)); #ifdef MEMPOOL @@ -99,22 +99,9 @@ #endif if (s->parts) ---- evolution-data-server-1.9.1/camel/camel-vee-folder.c.kill-ememory 2006-04-12 15:14:13.000000000 -0400 -+++ evolution-data-server-1.9.1/camel/camel-vee-folder.c 2006-10-25 23:03:35.000000000 -0400 -@@ -28,10 +28,6 @@ - - #include "libedataserver/md5-utils.h" - --#if defined (DOEPOOLV) || defined (DOESTRV) --#include "libedataserver/e-memory.h" --#endif -- - #include "camel-debug.h" - #include "camel-exception.h" - #include "camel-folder-search.h" ---- evolution-data-server-1.9.1/camel/camel-folder.c.kill-ememory 2006-10-25 23:02:26.000000000 -0400 -+++ evolution-data-server-1.9.1/camel/camel-folder.c 2006-10-25 23:03:35.000000000 -0400 -@@ -1890,7 +1890,7 @@ +--- evolution-data-server-1.11.2/camel/camel-folder.c.kill-ememory 2007-05-09 00:09:33.000000000 -0400 ++++ evolution-data-server-1.11.2/camel/camel-folder.c 2007-05-18 10:59:24.000000000 -0400 +@@ -1894,7 +1894,7 @@ struct _CamelFolderChangeInfoPrivate { GHashTable *uid_stored; /* what we have stored, which array they're in */ GHashTable *uid_source; /* used to create unique lists */ @@ -123,7 +110,7 @@ }; -@@ -1917,7 +1917,7 @@ +@@ -1921,7 +1921,7 @@ info->priv = g_malloc0(sizeof(*info->priv)); info->priv->uid_stored = g_hash_table_new(g_str_hash, g_str_equal); info->priv->uid_source = NULL; @@ -132,7 +119,7 @@ return info; } -@@ -1943,7 +1943,7 @@ +@@ -1947,7 +1947,7 @@ p->uid_source = g_hash_table_new(g_str_hash, g_str_equal); if (g_hash_table_lookup(p->uid_source, uid) == NULL) @@ -141,7 +128,7 @@ } -@@ -1972,7 +1972,7 @@ +@@ -1976,7 +1976,7 @@ char *uid = list->pdata[i]; if (g_hash_table_lookup(p->uid_source, uid) == NULL) @@ -150,7 +137,7 @@ } } -@@ -2132,7 +2132,7 @@ +@@ -2136,7 +2136,7 @@ return; } @@ -159,7 +146,7 @@ g_ptr_array_add(info->uid_added, olduid); g_hash_table_insert(p->uid_stored, olduid, info->uid_added); } -@@ -2166,7 +2166,7 @@ +@@ -2170,7 +2170,7 @@ return; } @@ -168,7 +155,7 @@ g_ptr_array_add(info->uid_removed, olduid); g_hash_table_insert(p->uid_stored, olduid, info->uid_removed); } -@@ -2195,7 +2195,7 @@ +@@ -2199,7 +2199,7 @@ return; } @@ -177,7 +164,7 @@ g_ptr_array_add(info->uid_changed, olduid); g_hash_table_insert(p->uid_stored, olduid, info->uid_changed); } -@@ -2221,7 +2221,7 @@ +@@ -2225,7 +2225,7 @@ /* always add to recent, but dont let anyone else know */ if (!g_hash_table_lookup_extended(p->uid_stored, uid, (void **)&olduid, (void **)&olduids)) { @@ -186,7 +173,7 @@ } g_ptr_array_add(info->uid_recent, olduid); } -@@ -2270,7 +2270,8 @@ +@@ -2274,7 +2274,8 @@ } g_hash_table_destroy(p->uid_stored); p->uid_stored = g_hash_table_new(g_str_hash, g_str_equal); @@ -196,7 +183,7 @@ } -@@ -2293,7 +2294,7 @@ +@@ -2297,7 +2298,7 @@ g_hash_table_destroy(p->uid_source); g_hash_table_destroy(p->uid_stored); @@ -205,8 +192,8 @@ g_free(p); g_ptr_array_free(info->uid_added, TRUE); ---- evolution-data-server-1.9.1/camel/camel-folder-summary.c.kill-ememory 2006-07-24 09:40:46.000000000 -0400 -+++ evolution-data-server-1.9.1/camel/camel-folder-summary.c 2006-10-25 23:03:35.000000000 -0400 +--- evolution-data-server-1.11.2/camel/camel-folder-summary.c.kill-ememory 2007-05-09 00:09:34.000000000 -0400 ++++ evolution-data-server-1.11.2/camel/camel-folder-summary.c 2007-05-18 10:59:24.000000000 -0400 @@ -134,10 +134,6 @@ s->message_info_chunks = NULL; s->content_info_chunks = NULL; @@ -232,8 +219,8 @@ g_ptr_array_add(s->messages, info); g_hash_table_insert(s->messages_uid, (char *)camel_message_info_uid(info), info); s->flags |= CAMEL_SUMMARY_DIRTY; ---- evolution-data-server-1.9.1/camel/providers/local/camel-maildir-summary.c.kill-ememory 2005-08-31 00:26:06.000000000 -0400 -+++ evolution-data-server-1.9.1/camel/providers/local/camel-maildir-summary.c 2006-10-25 23:03:35.000000000 -0400 +--- evolution-data-server-1.11.2/camel/providers/local/camel-maildir-summary.c.kill-ememory 2007-05-09 00:09:30.000000000 -0400 ++++ evolution-data-server-1.11.2/camel/providers/local/camel-maildir-summary.c 2007-05-18 10:59:24.000000000 -0400 @@ -129,10 +129,6 @@ s->message_info_size = sizeof(CamelMaildirMessageInfo); s->content_info_size = sizeof(CamelMaildirMessageContentInfo); @@ -365,9 +352,9 @@ } g_free(name); g_free(dest); ---- evolution-data-server-1.9.1/camel/camel-folder-search.c.kill-ememory 2006-06-08 21:21:50.000000000 -0400 -+++ evolution-data-server-1.9.1/camel/camel-folder-search.c 2006-10-25 23:03:35.000000000 -0400 -@@ -52,7 +52,7 @@ +--- evolution-data-server-1.11.2/camel/camel-folder-search.c.kill-ememory 2007-05-09 00:09:33.000000000 -0400 ++++ evolution-data-server-1.11.2/camel/camel-folder-search.c 2007-05-18 10:59:24.000000000 -0400 +@@ -53,7 +53,7 @@ #define r(x) struct _CamelFolderSearchPrivate { @@ -376,7 +363,7 @@ CamelException *ex; CamelFolderThread *threads; -@@ -122,23 +122,23 @@ +@@ -123,23 +123,23 @@ obj->sexp = e_sexp_new(); @@ -407,7 +394,7 @@ } static void -@@ -153,8 +153,8 @@ +@@ -154,8 +154,8 @@ g_hash_table_destroy(search->summary_hash); g_free(search->last_search); @@ -418,7 +405,7 @@ g_free(p); } -@@ -344,7 +344,7 @@ +@@ -345,7 +345,7 @@ GPtrArray *matches; int i; GHashTable *results; @@ -427,7 +414,7 @@ struct _CamelFolderSearchPrivate *p = _PRIVATE(search); p->ex = ex; -@@ -373,11 +373,7 @@ +@@ -374,11 +374,7 @@ /* now create a folder summary to return?? */ if (r->type == ESEXP_RES_ARRAY_PTR) { d(printf("got result ...\n")); @@ -440,7 +427,7 @@ if (search->summary) { /* reorder result in summary order */ results = g_hash_table_new(g_str_hash, g_str_equal); -@@ -389,20 +385,21 @@ +@@ -390,20 +386,21 @@ CamelMessageInfo *info = g_ptr_array_index(search->summary, i); char *uid = (char *)camel_message_info_uid(info); if (g_hash_table_lookup(results, uid)) { @@ -468,7 +455,7 @@ } else { g_warning("Search returned an invalid result type"); } -@@ -443,7 +440,7 @@ +@@ -444,7 +441,7 @@ GPtrArray *matches = NULL, *summary_set; int i; GHashTable *results; @@ -477,7 +464,7 @@ struct _CamelFolderSearchPrivate *p = _PRIVATE(search); g_assert(search->folder); -@@ -495,12 +492,7 @@ +@@ -496,12 +493,7 @@ /* now create a folder summary to return?? */ if (r->type == ESEXP_RES_ARRAY_PTR) { d(printf("got result ...\n")); @@ -491,7 +478,7 @@ /* reorder result in summary order */ results = g_hash_table_new(g_str_hash, g_str_equal); for (i=0;ivalue.ptrarray->len;i++) { -@@ -512,14 +504,15 @@ +@@ -513,14 +505,15 @@ CamelMessageInfo *info = g_ptr_array_index(summary_set, i); char *uid = (char *)camel_message_info_uid(info); if (g_hash_table_lookup(results, uid)) @@ -512,7 +499,7 @@ } else { g_warning("Search returned an invalid result type"); } -@@ -552,12 +545,12 @@ +@@ -553,12 +546,12 @@ { int i; struct _CamelFolderSearchPrivate *p = _PRIVATE(search); diff --git a/evolution-data-server-1.9.2-fix-name-selector-dialog.patch b/evolution-data-server-1.9.2-fix-name-selector-dialog.patch deleted file mode 100644 index 17ce0fe..0000000 --- a/evolution-data-server-1.9.2-fix-name-selector-dialog.patch +++ /dev/null @@ -1,45 +0,0 @@ ---- evolution-data-server-1.9.2/libedataserverui/e-name-selector-dialog.c.fix-name-selector-dialog 2006-11-08 11:23:52.000000000 -0500 -+++ evolution-data-server-1.9.2/libedataserverui/e-name-selector-dialog.c 2006-11-08 11:45:54.000000000 -0500 -@@ -1189,30 +1189,24 @@ - { - EDestinationStore *destination_store = E_DESTINATION_STORE (model); - EDestination *destination; -- gchar *string; -+ GString *buffer; - - destination = e_destination_store_get_destination (destination_store, iter); - g_assert (destination); - -- if (e_destination_is_evolution_list (destination)) { -- if (e_destination_list_show_addresses (destination)) { -- const gchar *name; -- const gchar *addresses; -- -- name = e_destination_get_name (destination); -- addresses = e_destination_get_address (destination); -- -- string = g_strdup_printf ("%s%s(%s)", name ? name : "", -- name ? " " : "", addresses ? addresses : "?"); -- } else { -- string = g_strdup (e_destination_get_name (destination)); -- } -- } else { -- string = g_strdup (e_destination_get_address (destination)); -+ buffer = g_string_new (e_destination_get_name (destination)); -+ -+ if (!e_destination_is_evolution_list (destination)) { -+ const gchar *email; -+ -+ email = e_destination_get_email (destination); -+ if (email == NULL || *email == '\0') -+ email = "?"; -+ g_string_append_printf (buffer, " <%s>", email); - } - -- g_object_set (cell, "text", string, NULL); -- g_free (string); -+ g_object_set (cell, "text", buffer->str, NULL); -+ g_string_free (buffer, TRUE); - } - - /* ----------------------- * diff --git a/evolution-data-server-1.9.2-strftime.patch b/evolution-data-server-1.9.2-strftime.patch deleted file mode 100644 index 621ec72..0000000 --- a/evolution-data-server-1.9.2-strftime.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- evolution-data-server-1.9.2/libedataserver/e-data-server-util.c.strftime 2006-11-09 22:40:39.000000000 -0500 -+++ evolution-data-server-1.9.2/libedataserver/e-data-server-util.c 2006-11-09 22:43:54.000000000 -0500 -@@ -335,11 +335,11 @@ - **/ - size_t e_strftime(char *s, size_t max, const char *fmt, const struct tm *tm) - { -+ size_t ret; - #ifdef HAVE_LKSTRFTIME -- return strftime(s, max, fmt, tm); -+ ret = strftime(s, max, fmt, tm); - #else - char *c, *ffmt, *ff; -- size_t ret; - - ffmt = g_strdup(fmt); - ff = ffmt; -@@ -365,8 +365,10 @@ - - ret = strftime(s, max, ffmt, tm); - g_free(ffmt); -- return ret; - #endif -+ if (ret == 0 && max > 0) -+ s[0] = '\0'; -+ return ret; - } - - /** diff --git a/evolution-data-server-1.9.3-e-source-color.patch b/evolution-data-server-1.9.3-e-source-color.patch deleted file mode 100644 index b6fb944..0000000 --- a/evolution-data-server-1.9.3-e-source-color.patch +++ /dev/null @@ -1,392 +0,0 @@ ---- evolution-data-server-1.9.3/libedataserverui/e-source-selector.c.e-source-color 2006-04-26 04:21:21.000000000 -0400 -+++ evolution-data-server-1.9.3/libedataserverui/e-source-selector.c 2006-12-15 16:02:47.000000000 -0500 -@@ -411,15 +411,24 @@ - NULL); - } else { - ESource *source; -- guint32 color; - GdkPixbuf *pixbuf = NULL; -+ const gchar *color_spec; -+ GdkColor color; - - g_assert (E_IS_SOURCE (data)); - source = E_SOURCE (data); - -- if (e_source_get_color (source, &color)) { -+ color_spec = e_source_peek_color_spec (source); -+ if (color_spec != NULL && gdk_color_parse (color_spec, &color)) { -+ guint32 rgba; -+ - pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, 16, 16); -- gdk_pixbuf_fill (pixbuf, color << 8); -+ -+ rgba = (((color.red & 0xff00) << 8) | -+ ((color.green & 0xff00)) | -+ ((color.blue & 0xff00) >> 8)) << 8; -+ -+ gdk_pixbuf_fill (pixbuf, rgba); - } - - g_object_set (renderer, ---- evolution-data-server-1.9.3/libedataserver/e-source.h.e-source-color 2005-08-31 00:26:10.000000000 -0400 -+++ evolution-data-server-1.9.3/libedataserver/e-source.h 2006-12-15 16:02:47.000000000 -0500 -@@ -82,20 +82,27 @@ - const char *relative_uri); - void e_source_set_absolute_uri (ESource *source, - const char *absolute_uri); -+void e_source_set_color_spec (ESource *source, -+ const gchar *color_spec); - void e_source_set_readonly (ESource *source, - gboolean readonly); -+#ifndef EDS_DISABLE_DEPRECATED - void e_source_set_color (ESource *source, - guint32 color); - void e_source_unset_color (ESource *source); -+#endif - - ESourceGroup *e_source_peek_group (ESource *source); - const char *e_source_peek_uid (ESource *source); - const char *e_source_peek_name (ESource *source); - const char *e_source_peek_relative_uri (ESource *source); - const char *e_source_peek_absolute_uri (ESource *source); -+const char *e_source_peek_color_spec (ESource *source); - gboolean e_source_get_readonly (ESource *source); -+#ifndef EDS_DISABLE_DEPRECATED - gboolean e_source_get_color (ESource *source, - guint32 *color_return); -+#endif - - char *e_source_get_uri (ESource *source); - ---- evolution-data-server-1.9.3/libedataserver/e-source.c.e-source-color 2006-08-03 07:29:44.000000000 -0400 -+++ evolution-data-server-1.9.3/libedataserver/e-source.c 2006-12-15 16:02:47.000000000 -0500 -@@ -32,10 +32,6 @@ - #define ES_CLASS(obj) E_SOURCE_CLASS (G_OBJECT_GET_CLASS (obj)) - - --/* String used to put the color in the XML. */ --#define COLOR_FORMAT_STRING "%06x" -- -- - /* Private members. */ - - struct _ESourcePrivate { -@@ -48,8 +44,7 @@ - - gboolean readonly; - -- gboolean has_color; -- guint32 color; -+ gchar *color_spec; - - GHashTable *properties; - }; -@@ -89,6 +84,7 @@ - g_free (priv->name); - g_free (priv->relative_uri); - g_free (priv->absolute_uri); -+ g_free (priv->color_spec); - - g_hash_table_destroy (priv->properties); - -@@ -143,6 +139,28 @@ - g_free, g_free); - } - -+/* Private methods. */ -+ -+static gboolean -+set_color_spec (ESource *source, -+ const gchar *color_spec) -+{ -+ ESourcePrivate *priv = source->priv; -+ gboolean do_cmp; -+ -+ if (color_spec == priv->color_spec) -+ return FALSE; -+ -+ do_cmp = (color_spec != NULL && priv->color_spec != NULL); -+ if (do_cmp && g_ascii_strcasecmp (color_spec, priv->color_spec) == 0) -+ return FALSE; -+ -+ g_free (priv->color_spec); -+ priv->color_spec = g_strdup (color_spec); -+ -+ return TRUE; -+} -+ - /* Public methods. */ - - ESource * -@@ -300,19 +318,22 @@ - xmlChar *name; - xmlChar *relative_uri; - xmlChar *absolute_uri; -- xmlChar *color_string; -- gboolean retval; -+ xmlChar *color_spec; -+ xmlChar *color; -+ gboolean retval = FALSE; - gboolean changed = FALSE; - - name = xmlGetProp (node, "name"); - relative_uri = xmlGetProp (node, "relative_uri"); - absolute_uri = xmlGetProp (node, "uri"); -- color_string = xmlGetProp (node, "color"); -+ color_spec = xmlGetProp (node, "color_spec"); -+ color = xmlGetProp (node, "color"); /* obsolete */ - -- if (name == NULL || (relative_uri == NULL && absolute_uri == NULL)) { -- retval = FALSE; -+ if (name == NULL || (relative_uri == NULL && absolute_uri == NULL)) -+ goto done; -+ -+ if (color_spec != NULL && color != NULL) - goto done; -- } - - if (source->priv->name == NULL - || strcmp (name, source->priv->name) != 0 -@@ -334,21 +355,15 @@ - changed = TRUE; - } - -- if (color_string == NULL) { -- if (source->priv->has_color) { -- source->priv->has_color = FALSE; -- changed = TRUE; -- } -+ if (color == NULL) { -+ /* It is okay for color_spec to be NULL. */ -+ changed |= set_color_spec (source, color_spec); - } else { -- guint32 color = 0; -- -- sscanf (color_string, COLOR_FORMAT_STRING, &color); -- if (! source->priv->has_color || source->priv->color != color) { -- source->priv->has_color = TRUE; -- source->priv->color = color; -- changed = TRUE; -- } -+ gchar buffer[8]; -+ g_snprintf (buffer, sizeof (buffer), "#%s", color); -+ changed |= set_color_spec (source, buffer); - } -+ - if (g_hash_table_size (source->priv->properties) && !node->children) { - g_hash_table_destroy (source->priv->properties); - source->priv->properties = g_hash_table_new_full (g_str_hash, g_str_equal, -@@ -387,8 +402,8 @@ - xmlFree (relative_uri); - if (absolute_uri != NULL) - xmlFree (absolute_uri); -- if (color_string != NULL) -- xmlFree (color_string); -+ if (color_spec != NULL) -+ xmlFree (color_spec); - - return retval; - } -@@ -552,18 +567,12 @@ - e_source_set_color (ESource *source, - guint32 color) - { -- g_return_if_fail (E_IS_SOURCE (source)); -+ gchar color_spec[8]; - -- if (source->priv->readonly) -- return; -- -- if (source->priv->has_color && source->priv->color == color) -- return; -- -- source->priv->has_color = TRUE; -- source->priv->color = color; -+ g_return_if_fail (E_IS_SOURCE (source)); - -- g_signal_emit (source, signals[CHANGED], 0); -+ g_snprintf (color_spec, sizeof (color_spec), "#%06x", color); -+ e_source_set_color_spec (source, color_spec); - } - - void -@@ -571,13 +580,29 @@ - { - g_return_if_fail (E_IS_SOURCE (source)); - -- if (! source->priv->has_color) -- return; -- -- source->priv->has_color = FALSE; -- g_signal_emit (source, signals[CHANGED], 0); -+ e_source_set_color_spec (source, NULL); - } - -+/** -+ * e_source_set_color_spec: -+ * @source: an ESource -+ * @color_spec: a string specifying the color -+ * -+ * Store a textual representation of a color in @source. The @color_spec -+ * string should be parsable by #gdk_color_parse(), or %NULL to unset the -+ * color in @source. -+ * -+ * Since: 1.10 -+ **/ -+void -+e_source_set_color_spec (ESource *source, -+ const gchar *color_spec) -+{ -+ g_return_if_fail (E_IS_SOURCE (source)); -+ -+ if (!source->priv->readonly && set_color_spec (source, color_spec)) -+ g_signal_emit (source, signals[CHANGED], 0); -+} - - ESourceGroup * - e_source_peek_group (ESource *source) -@@ -619,6 +644,25 @@ - return source->priv->absolute_uri; - } - -+/** -+ * e_source_peek_color_spec: -+ * @source: an ESource -+ * -+ * Return the textual representation of the color for @source, or %NULL if it -+ * has none. The returned string should be parsable by #gdk_color_parse(). -+ * -+ * Return value: a string specifying the color -+ * -+ * Since: 1.10 -+ **/ -+const char * -+e_source_peek_color_spec (ESource *source) -+{ -+ g_return_val_if_fail (E_IS_SOURCE (source), NULL); -+ -+ return source->priv->color_spec; -+} -+ - gboolean - e_source_get_readonly (ESource *source) - { -@@ -643,13 +687,21 @@ - e_source_get_color (ESource *source, - guint32 *color_return) - { -+ const gchar *color_spec; -+ guint32 color; -+ - g_return_val_if_fail (E_IS_SOURCE (source), FALSE); - -- if (! source->priv->has_color) -+ color_spec = e_source_peek_color_spec (source); -+ -+ if (color_spec == NULL) -+ return FALSE; -+ -+ if (sscanf (color_spec, "#%06x", &color) != 1) - return FALSE; - - if (color_return != NULL) -- *color_return = source->priv->color; -+ *color_return = color; - - return TRUE; - } -@@ -689,8 +741,6 @@ - xmlNodePtr parent_node) - { - ESourcePrivate *priv; -- gboolean has_color; -- guint32 color; - xmlNodePtr node; - const char *abs_uri = NULL, *relative_uri = NULL; - -@@ -709,13 +759,9 @@ - xmlSetProp (node, "uri", abs_uri); - if (relative_uri) - xmlSetProp (node, "relative_uri", relative_uri); -- -- has_color = e_source_get_color (source, &color); -- if (has_color) { -- char *color_string = g_strdup_printf (COLOR_FORMAT_STRING, color); -- xmlSetProp (node, "color", color_string); -- g_free (color_string); -- } -+ -+ if (priv->color_spec != NULL) -+ xmlSetProp (node, "color_spec", priv->color_spec); - - if (g_hash_table_size (priv->properties) != 0) { - xmlNodePtr properties_node; -@@ -848,7 +894,6 @@ - e_source_copy (ESource *source) - { - ESource *new_source; -- guint32 color; - - g_return_val_if_fail (E_IS_SOURCE (source), NULL); - -@@ -857,8 +902,7 @@ - - e_source_set_name (new_source, e_source_peek_name (source)); - -- if (e_source_get_color (source, &color)) -- e_source_set_color (new_source, color); -+ new_source->priv->color_spec = g_strdup (source->priv->color_spec); - - new_source->priv->absolute_uri = g_strdup (e_source_peek_absolute_uri (source)); - ---- evolution-data-server-1.9.3/libedataserver/test-source-list.c.e-source-color 2005-10-14 07:31:40.000000000 -0400 -+++ evolution-data-server-1.9.3/libedataserver/test-source-list.c 2006-12-15 16:02:47.000000000 -0500 -@@ -91,17 +91,16 @@ - dump_source (ESource *source) - { - char *uri = e_source_get_uri (source); -- gboolean has_color; -- guint32 color; -+ const gchar *color_spec; - - g_print ("\tSource %s\n", e_source_peek_uid (source)); - g_print ("\t\tname: %s\n", e_source_peek_name (source)); - g_print ("\t\trelative_uri: %s\n", e_source_peek_relative_uri (source)); - g_print ("\t\tabsolute_uri: %s\n", uri); - -- has_color = e_source_get_color (source, &color); -- if (has_color) -- g_print ("\t\tcolor: %06x\n", color); -+ color_spec = e_source_peek_color_spec (source); -+ if (color_spec != NULL) -+ g_print ("\t\tcolor: %s\n", color_spec); - - g_print ("\t\tproperties:\n"); - e_source_foreach_property (source, (GHFunc) dump_property, NULL); -@@ -429,7 +428,6 @@ - - if (set_color_arg != NULL) { - ESource *source; -- guint32 color; - - if (add_source_arg == NULL && source_arg == NULL) { - fprintf (stderr, -@@ -442,8 +440,7 @@ - else - source = e_source_list_peek_source_by_uid (list, source_arg); - -- sscanf (set_color_arg, "%06x", &color); -- e_source_set_color (source, color); -+ e_source_set_color_spec (source, set_color_arg); - e_source_list_sync (list, NULL); - } - -@@ -461,7 +458,7 @@ - else - source = e_source_list_peek_source_by_uid (list, source_arg); - -- e_source_unset_color (source); -+ e_source_set_color_spec (source, NULL); - e_source_list_sync (list, NULL); - } - diff --git a/evolution-data-server-1.9.92-e-flag.patch b/evolution-data-server-1.9.92-e-flag.patch index 1acc101..08fc526 100644 --- a/evolution-data-server-1.9.92-e-flag.patch +++ b/evolution-data-server-1.9.92-e-flag.patch @@ -1,278 +1,5 @@ ---- /dev/null 2007-03-08 09:20:11.212292094 -0500 -+++ evolution-data-server-1.9.92/libedataserver/e-flag.c 2007-03-08 17:16:18.000000000 -0500 -@@ -0,0 +1,171 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ -+/* -+ * Copyright (C) 2007 Novell, Inc. -+ * -+ * This library is free software; you can redistribute it and/or -+ * modify it under the terms of version 2 of the GNU Lesser General Public -+ * License as published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * General Public License for more details. -+ * -+ * You should have received a copy of the GNU Lesser General Public -+ * License along with this library; if not, write to the -+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ * Boston, MA 02111-1307, USA. -+ */ -+ -+#include "e-flag.h" -+ -+struct _EFlag { -+ GCond *cond; -+ GMutex *mutex; -+ gboolean is_set; -+}; -+ -+/** -+ * e_flag_new: -+ * -+ * Creates a new #EFlag object. It is initially unset. -+ * -+ * Returns: a new #EFlag -+ **/ -+EFlag * -+e_flag_new (void) -+{ -+ EFlag *flag; -+ -+ flag = g_slice_new (EFlag); -+ flag->cond = g_cond_new (); -+ flag->mutex = g_mutex_new (); -+ flag->is_set = FALSE; -+ -+ return flag; -+} -+ -+/** -+ * e_flag_is_set: -+ * @flag: an #EFlag -+ * -+ * Returns the state of @flag. -+ * -+ * Returns: %TRUE if @flag is set -+ **/ -+gboolean -+e_flag_is_set (EFlag *flag) -+{ -+ gboolean is_set; -+ -+ g_return_val_if_fail (flag != NULL, FALSE); -+ -+ g_mutex_lock (flag->mutex); -+ is_set = flag->is_set; -+ g_mutex_unlock (flag->mutex); -+ -+ return is_set; -+} -+ -+/** -+ * e_flag_set: -+ * @flag: an #EFlag -+ * -+ * Sets @flag. All threads waiting on @flag are woken up. Threads that -+ * call e_flag_wait() or e_flag_timed_wait() once @flag is set will not -+ * block at all. -+ **/ -+void -+e_flag_set (EFlag *flag) -+{ -+ g_return_if_fail (flag != NULL); -+ -+ g_mutex_lock (flag->mutex); -+ flag->is_set = TRUE; -+ g_cond_broadcast (flag->cond); -+ g_mutex_unlock (flag->mutex); -+} -+ -+/** -+ * e_flag_clear: -+ * @flag: an #EFlag -+ * -+ * Unsets @flag. Subsequent calls to e_flag_wait() or e_flag_timed_wait() -+ * will block until @flag is set. -+ **/ -+void -+e_flag_clear (EFlag *flag) -+{ -+ g_return_if_fail (flag != NULL); -+ -+ g_mutex_lock (flag->mutex); -+ flag->is_set = FALSE; -+ g_mutex_unlock (flag->mutex); -+} -+ -+/** -+ * e_flag_wait: -+ * @flag: an #EFlag -+ * -+ * Blocks until @flag is set. If @flag is already set, the function returns -+ * immediately. -+ **/ -+void -+e_flag_wait (EFlag *flag) -+{ -+ g_return_if_fail (flag != NULL); -+ -+ g_mutex_lock (flag->mutex); -+ while (!flag->is_set) -+ g_cond_wait (flag->cond, flag->mutex); -+ g_mutex_unlock (flag->mutex); -+} -+ -+/** -+ * e_flag_timed_wait: -+ * @flag: an #EFlag -+ * @abs_time: a #GTimeVal, determining the final time -+ * -+ * Blocks until @flag is set, or until the time specified by @abs_time. -+ * If @flag is already set, the function returns immediately. The return -+ * value indicates the state of @flag after waiting. -+ * -+ * If @abs_time is %NULL, e_flag_timed_wait() acts like e_flag_wait(). -+ * -+ * To easily calculate @abs_time, a combination of g_get_current_time() and -+ * g_time_val_add() can be used. -+ * -+ * Returns: %TRUE if @flag is now set -+ **/ -+gboolean -+e_flag_timed_wait (EFlag *flag, GTimeVal *abs_time) -+{ -+ gboolean is_set; -+ -+ g_return_val_if_fail (flag != NULL, FALSE); -+ -+ g_mutex_lock (flag->mutex); -+ while (!flag->is_set) -+ if (!g_cond_timed_wait (flag->cond, flag->mutex, abs_time)) -+ break; -+ is_set = flag->is_set; -+ g_mutex_unlock (flag->mutex); -+ -+ return is_set; -+} -+ -+/** -+ * e_flag_free: -+ * @flag: an #EFlag -+ * -+ * Destroys @flag. -+ **/ -+void -+e_flag_free (EFlag *flag) -+{ -+ g_return_if_fail (flag != NULL); -+ -+ g_cond_free (flag->cond); -+ g_mutex_free (flag->mutex); -+ g_slice_free (EFlag, flag); -+} ---- /dev/null 2007-03-08 09:20:11.212292094 -0500 -+++ evolution-data-server-1.9.92/libedataserver/e-flag.h 2007-03-08 17:16:18.000000000 -0500 -@@ -0,0 +1,43 @@ -+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ -+/* -+ * Copyright (C) 2007 Novell, Inc. -+ * -+ * This library is free software; you can redistribute it and/or -+ * modify it under the terms of version 2 of the GNU Lesser General Public -+ * License as published by the Free Software Foundation. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * General Public License for more details. -+ * -+ * You should have received a copy of the GNU Lesser General Public -+ * License along with this library; if not, write to the -+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, -+ * Boston, MA 02111-1307, USA. -+ */ -+ -+#ifndef E_FLAG_H -+#define E_FLAG_H -+ -+/* An EFlag is essentially a binary semaphore with a more intuitive interface. -+ * Based on Python's threading.Event class ("EEvent" was already taken). */ -+ -+#include -+ -+G_BEGIN_DECLS -+ -+typedef struct _EFlag EFlag; -+ -+EFlag * e_flag_new (void); -+gboolean e_flag_is_set (EFlag *flag); -+void e_flag_set (EFlag *flag); -+void e_flag_clear (EFlag *flag); -+void e_flag_wait (EFlag *flag); -+gboolean e_flag_timed_wait (EFlag *flag, -+ GTimeVal *abs_time); -+void e_flag_free (EFlag *flag); -+ -+G_END_DECLS -+ -+#endif /* E_FLAG_H */ ---- evolution-data-server-1.9.92/libedataserver/Makefile.in.e-flag 2007-02-26 08:32:13.000000000 -0500 -+++ evolution-data-server-1.9.92/libedataserver/Makefile.in 2007-03-08 17:16:18.000000000 -0500 -@@ -69,7 +69,7 @@ - am_libedataserver_1_2_la_OBJECTS = $(am__objects_1) e-account-list.lo \ - e-account.lo e-categories.lo e-component-listener.lo \ - e-data-server-module.lo e-dbhash.lo e-db3-utils.lo \ -- e-file-cache.lo e-iconv.lo e-iterator.lo e-list.lo \ -+ e-file-cache.lo e-flag.lo e-iconv.lo e-iterator.lo e-list.lo \ - e-list-iterator.lo e-memory.lo e-msgport.lo e-sexp.lo \ - e-source-group.lo e-source-list.lo e-source.lo e-time-utils.lo \ - e-uid.lo e-url.lo e-data-server-util.lo e-trie.lo \ -@@ -420,6 +420,7 @@ - e-dbhash.c \ - e-db3-utils.c \ - e-file-cache.c \ -+ e-flag.c \ - e-iconv.c \ - e-iterator.c \ - e-list.c \ -@@ -459,6 +460,7 @@ - e-db3-utils.h \ - e-dbhash.h \ - e-file-cache.h \ -+ e-flag.h \ - e-iconv.h \ - e-iterator.h \ - e-list.h \ -@@ -577,6 +579,7 @@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/e-db3-utils.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/e-dbhash.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/e-file-cache.Plo@am__quote@ -+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/e-flag.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/e-iconv.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/e-iterator.Plo@am__quote@ - @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/e-list-iterator.Plo@am__quote@ ---- evolution-data-server-1.9.92/libedataserver/Makefile.am.e-flag 2007-01-03 09:56:27.000000000 -0500 -+++ evolution-data-server-1.9.92/libedataserver/Makefile.am 2007-03-08 17:16:18.000000000 -0500 -@@ -26,6 +26,7 @@ - e-dbhash.c \ - e-db3-utils.c \ - e-file-cache.c \ -+ e-flag.c \ - e-iconv.c \ - e-iterator.c \ - e-list.c \ -@@ -66,6 +67,7 @@ - e-db3-utils.h \ - e-dbhash.h \ - e-file-cache.h \ -+ e-flag.h \ - e-iconv.h \ - e-iterator.h \ - e-list.h \ ---- evolution-data-server-1.9.92/addressbook/backends/file/e-book-backend-file.c.e-flag 2007-01-03 09:56:28.000000000 -0500 -+++ evolution-data-server-1.9.92/addressbook/backends/file/e-book-backend-file.c 2007-03-09 00:22:01.000000000 -0500 +--- evolution-data-server-1.11.2/addressbook/backends/file/e-book-backend-file.c.e-flag 2007-05-13 13:39:43.000000000 -0400 ++++ evolution-data-server-1.11.2/addressbook/backends/file/e-book-backend-file.c 2007-05-18 11:13:41.000000000 -0400 @@ -43,6 +43,7 @@ #include "libedataserver/e-dbhash.h" #include "libedataserver/e-db3-utils.h" @@ -281,7 +8,7 @@ #include "libebook/e-contact.h" -@@ -479,18 +480,15 @@ +@@ -497,18 +498,15 @@ typedef struct { EBookBackendFile *bf; @@ -302,7 +29,7 @@ g_free (closure); } -@@ -500,10 +498,8 @@ +@@ -518,10 +516,8 @@ FileBackendSearchClosure *closure = g_new (FileBackendSearchClosure, 1); closure->bf = bf; @@ -314,7 +41,7 @@ g_object_set_data_full (G_OBJECT (book_view), "EBookBackendFile.BookView::closure", closure, (GDestroyNotify)closure_destroy); -@@ -527,7 +523,7 @@ +@@ -545,7 +541,7 @@ DB *db; DBT id_dbt, vcard_dbt; int db_error; @@ -323,7 +50,7 @@ d(printf ("starting initial population of book view\n")); -@@ -547,9 +543,7 @@ +@@ -565,9 +561,7 @@ } d(printf ("signalling parent thread\n")); @@ -334,7 +61,7 @@ if (e_book_backend_summary_is_summary_query (bf->priv->summary, query)) { /* do a summary query */ -@@ -558,11 +552,8 @@ +@@ -576,11 +570,8 @@ for (i = 0; i < ids->len; i ++) { char *id = g_ptr_array_index (ids, i); @@ -347,7 +74,7 @@ break; string_to_dbt (id, &id_dbt); -@@ -595,11 +586,7 @@ +@@ -613,11 +604,7 @@ db_error = dbc->c_get(dbc, &id_dbt, &vcard_dbt, DB_FIRST); while (db_error == 0) { @@ -360,7 +87,7 @@ break; /* don't include the version in the list of cards */ -@@ -628,7 +615,7 @@ +@@ -647,7 +634,7 @@ } @@ -369,7 +96,7 @@ e_data_book_view_notify_complete (book_view, GNOME_Evolution_Addressbook_Success); /* unref the */ -@@ -646,15 +633,12 @@ +@@ -665,15 +652,12 @@ { FileBackendSearchClosure *closure = init_closure (book_view, E_BOOK_BACKEND_FILE (backend)); @@ -386,7 +113,7 @@ d(printf ("returning from start_book_view\n")); } -@@ -663,14 +647,11 @@ +@@ -682,14 +666,11 @@ EDataBookView *book_view) { FileBackendSearchClosure *closure = get_closure (book_view); @@ -404,8 +131,8 @@ if (need_join) g_thread_join (closure->thread); ---- evolution-data-server-1.9.92/addressbook/backends/groupwise/e-book-backend-groupwise.c.e-flag 2007-01-03 09:56:29.000000000 -0500 -+++ evolution-data-server-1.9.92/addressbook/backends/groupwise/e-book-backend-groupwise.c 2007-03-09 00:22:01.000000000 -0500 +--- evolution-data-server-1.11.2/addressbook/backends/groupwise/e-book-backend-groupwise.c.e-flag 2007-04-18 06:10:20.000000000 -0400 ++++ evolution-data-server-1.11.2/addressbook/backends/groupwise/e-book-backend-groupwise.c 2007-05-18 11:15:53.000000000 -0400 @@ -40,6 +40,7 @@ #include "libedataserver/e-sexp.h" #include "libedataserver/e-data-server-util.h" @@ -414,7 +141,7 @@ #include "libedataserver/e-url.h" #include "libebook/e-contact.h" #include "libedata-book/e-book-backend-sexp.h" -@@ -2070,17 +2071,14 @@ +@@ -2071,17 +2072,14 @@ typedef struct { EBookBackendGroupwise *bg; @@ -434,7 +161,7 @@ g_free (closure); } -@@ -2090,10 +2088,8 @@ +@@ -2091,10 +2089,8 @@ GroupwiseBackendSearchClosure *closure = g_new (GroupwiseBackendSearchClosure, 1); closure->bg = bg; @@ -446,7 +173,7 @@ g_object_set_data_full (G_OBJECT (book_view), "EBookBackendGroupwise.BookView::closure", closure, (GDestroyNotify)closure_destroy); -@@ -2115,19 +2111,14 @@ +@@ -2116,7 +2112,6 @@ GroupwiseBackendSearchClosure *closure) { int i; @@ -454,8 +181,9 @@ if (enable_debug) printf ("\nread contacts from cache for the ids found in summary\n"); - for (i = 0; i < ids->len; i ++) { - char *uid = g_ptr_array_index (ids, i); +@@ -2124,12 +2119,8 @@ + char *uid; + EContact *contact; - g_mutex_lock (closure->mutex); - stopped = closure->stopped; @@ -466,9 +194,9 @@ + if (!e_flag_is_set (closure->running)) + break; - EContact *contact = - e_book_backend_db_cache_get_contact (ebgw->priv->file_db, uid); -@@ -2136,7 +2127,7 @@ + uid = g_ptr_array_index (ids, i); + contact = e_book_backend_db_cache_get_contact (ebgw->priv->file_db, uid); +@@ -2138,7 +2129,7 @@ g_object_unref (contact); } } @@ -477,7 +205,7 @@ e_data_book_view_notify_complete (book_view, GNOME_Evolution_Addressbook_Success); } -@@ -2151,7 +2142,6 @@ +@@ -2153,7 +2144,6 @@ const char *query = NULL; EGwFilter *filter = NULL; GPtrArray *ids = NULL; @@ -485,7 +213,7 @@ EDataBookView *book_view = data; GroupwiseBackendSearchClosure *closure = get_closure (book_view); char *view = NULL; -@@ -2166,9 +2156,7 @@ +@@ -2168,9 +2158,7 @@ if (enable_debug) printf ("start book view for %s \n", gwb->priv->book_name); bonobo_object_ref (book_view); @@ -496,7 +224,7 @@ query = e_data_book_view_get_card_query (book_view); if (enable_debug) -@@ -2200,10 +2188,7 @@ +@@ -2202,10 +2190,7 @@ contacts = e_book_backend_db_cache_get_contacts (gwb->priv->file_db, query); temp_list = contacts; for (; contacts != NULL; contacts = g_list_next(contacts)) { @@ -508,7 +236,7 @@ for (;contacts != NULL; contacts = g_list_next (contacts)) g_object_unref (contacts->data); break; -@@ -2211,7 +2196,7 @@ +@@ -2213,7 +2198,7 @@ e_data_book_view_notify_update (book_view, E_CONTACT(contacts->data)); g_object_unref (contacts->data); } @@ -517,7 +245,7 @@ e_data_book_view_notify_complete (book_view, GNOME_Evolution_Addressbook_Success); if (temp_list) g_list_free (temp_list); -@@ -2339,10 +2324,7 @@ +@@ -2341,10 +2326,7 @@ temp_list = gw_items; for (; gw_items != NULL; gw_items = g_list_next(gw_items)) { @@ -529,7 +257,7 @@ for (;gw_items != NULL; gw_items = g_list_next (gw_items)) g_object_unref (gw_items->data); break; -@@ -2363,7 +2345,7 @@ +@@ -2365,7 +2347,7 @@ } if (temp_list) g_list_free (temp_list); @@ -538,7 +266,7 @@ e_data_book_view_notify_complete (book_view, GNOME_Evolution_Addressbook_Success); if (filter) g_object_unref (filter); -@@ -2392,12 +2374,10 @@ +@@ -2394,12 +2376,10 @@ if (enable_debug) printf ("\ne_book_backend_groupwise_start_book_view...\n"); @@ -552,7 +280,7 @@ } static void -@@ -2408,10 +2388,7 @@ +@@ -2410,10 +2390,7 @@ if (enable_debug) printf ("\ne_book_backend_groupwise_stop_book_view...\n"); @@ -564,7 +292,7 @@ } static void -@@ -2650,11 +2627,8 @@ +@@ -2655,11 +2632,8 @@ if (book_view) { closure = get_closure (book_view); bonobo_object_ref (book_view); @@ -578,7 +306,7 @@ } while (!done) { -@@ -2799,11 +2773,8 @@ +@@ -2804,11 +2778,8 @@ if (book_view) { closure = get_closure (book_view); bonobo_object_ref (book_view); @@ -592,7 +320,7 @@ } cache_file_name = e_book_backend_db_cache_get_filename(ebgw->priv->file_db); -@@ -2967,11 +2938,8 @@ +@@ -2974,11 +2945,8 @@ if (book_view) { closure = get_closure (book_view); bonobo_object_ref (book_view); @@ -606,8 +334,8 @@ } /* update the cache */ ---- evolution-data-server-1.9.92/addressbook/backends/vcf/e-book-backend-vcf.c.e-flag 2007-01-03 09:56:29.000000000 -0500 -+++ evolution-data-server-1.9.92/addressbook/backends/vcf/e-book-backend-vcf.c 2007-03-09 00:22:01.000000000 -0500 +--- evolution-data-server-1.11.2/addressbook/backends/vcf/e-book-backend-vcf.c.e-flag 2007-04-18 06:10:21.000000000 -0400 ++++ evolution-data-server-1.11.2/addressbook/backends/vcf/e-book-backend-vcf.c 2007-05-18 11:13:41.000000000 -0400 @@ -41,6 +41,7 @@ #include @@ -709,132 +437,8 @@ if (need_join) g_thread_join (closure->thread); ---- evolution-data-server-1.9.92/docs/reference/libedataserver/libedataserver-docs.sgml.e-flag 2007-01-03 09:56:22.000000000 -0500 -+++ evolution-data-server-1.9.92/docs/reference/libedataserver/libedataserver-docs.sgml 2007-03-08 17:16:18.000000000 -0500 -@@ -16,6 +16,7 @@ - - - -+ - - - ---- /dev/null 2007-03-08 09:20:11.212292094 -0500 -+++ evolution-data-server-1.9.92/docs/reference/libedataserver/tmpl/e-flag.sgml 2007-03-08 17:16:18.000000000 -0500 -@@ -0,0 +1,89 @@ -+ -+EFlag -+ -+ -+Simple thread synchronization -+ -+ -+ -+An #EFlag is a simple thread synchronization mechanism. It implements a -+thread-safe flag that can be blocked on. -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+The EFlag struct is an opaque data structure -+representing a thread-safe flag. It should be accessed only by using -+the following functions. -+ -+ -+ -+ -+ -+ -+ -+ -+@Returns: -+ -+ -+ -+ -+ -+ -+ -+@flag: -+@Returns: -+ -+ -+ -+ -+ -+ -+ -+@flag: -+ -+ -+ -+ -+ -+ -+ -+@flag: -+ -+ -+ -+ -+ -+ -+ -+@flag: -+ -+ -+ -+ -+ -+ -+ -+@flag: -+@abs_time: -+@Returns: -+ -+ -+ -+ -+ -+ -+ -+@flag: -+ -+ ---- evolution-data-server-1.9.92/docs/reference/libedataserver/libedataserver-sections.txt.e-flag 2007-01-03 09:56:22.000000000 -0500 -+++ evolution-data-server-1.9.92/docs/reference/libedataserver/libedataserver-sections.txt 2007-03-08 17:16:18.000000000 -0500 -@@ -83,6 +83,19 @@ - - -
-+e-flag -+EFlag -+EFlag -+e_flag_new -+e_flag_is_set -+e_flag_set -+e_flag_clear -+e_flag_wait -+e_flag_timed_wait -+e_flag_free -+
-+ -+
- e-iterator - EIterator - e_iterator_get ---- evolution-data-server-1.9.92/calendar/libecal/e-cal.c.e-flag 2007-03-08 17:16:18.000000000 -0500 -+++ evolution-data-server-1.9.92/calendar/libecal/e-cal.c 2007-03-09 00:22:01.000000000 -0500 +--- evolution-data-server-1.11.2/calendar/libecal/e-cal.c.e-flag 2007-05-14 00:24:28.000000000 -0400 ++++ evolution-data-server-1.11.2/calendar/libecal/e-cal.c 2007-05-18 11:16:58.000000000 -0400 @@ -33,6 +33,7 @@ #include @@ -853,7 +457,7 @@ ECalendarStatus status; char *uid; -@@ -306,8 +306,7 @@ +@@ -303,8 +303,7 @@ { ECalendarOp *op = g_new0 (ECalendarOp, 1); @@ -863,7 +467,7 @@ ecal->priv->current_op = op; -@@ -329,8 +328,7 @@ +@@ -326,8 +325,7 @@ e_calendar_free_op (ECalendarOp *op) { /* XXX more stuff here */ @@ -873,7 +477,7 @@ g_free (op); } -@@ -448,14 +446,10 @@ +@@ -445,14 +443,10 @@ return; } @@ -889,7 +493,7 @@ } static void -@@ -477,14 +471,10 @@ +@@ -474,14 +468,10 @@ return; } @@ -905,7 +509,7 @@ } static void -@@ -500,14 +490,10 @@ +@@ -497,14 +487,10 @@ return; } @@ -921,7 +525,7 @@ } static void -@@ -523,14 +509,10 @@ +@@ -520,14 +506,10 @@ return; } @@ -937,7 +541,7 @@ } static void -@@ -546,14 +528,10 @@ +@@ -543,14 +525,10 @@ return; } @@ -953,7 +557,7 @@ } static void -@@ -569,13 +547,9 @@ +@@ -566,13 +544,9 @@ return; } @@ -968,7 +572,7 @@ } static void -@@ -591,13 +565,9 @@ +@@ -588,13 +562,9 @@ return; } @@ -983,7 +587,7 @@ } static void -@@ -613,14 +583,10 @@ +@@ -610,14 +580,10 @@ return; } @@ -999,7 +603,7 @@ } static void -@@ -636,13 +602,9 @@ +@@ -633,13 +599,9 @@ return; } @@ -1014,7 +618,7 @@ } static void -@@ -658,13 +620,9 @@ +@@ -655,13 +617,9 @@ return; } @@ -1029,7 +633,7 @@ } static void -@@ -680,13 +638,9 @@ +@@ -677,13 +635,9 @@ return; } @@ -1044,7 +648,7 @@ } static void -@@ -702,13 +656,9 @@ +@@ -699,13 +653,9 @@ return; } @@ -1059,7 +663,7 @@ } static void -@@ -725,8 +675,6 @@ +@@ -722,8 +672,6 @@ return; } @@ -1068,7 +672,7 @@ op->status = status; op->list = g_list_copy (users); op->string = g_strdup (object); -@@ -734,9 +682,7 @@ +@@ -731,9 +679,7 @@ for (l = op->list; l; l = l->next) l->data = g_strdup (l->data); @@ -1079,7 +683,7 @@ } static void -@@ -752,14 +698,10 @@ +@@ -749,14 +695,10 @@ return; } @@ -1095,7 +699,7 @@ } static void -@@ -775,14 +717,10 @@ +@@ -772,14 +714,10 @@ return; } @@ -1111,7 +715,7 @@ } static void -@@ -799,17 +737,13 @@ +@@ -796,17 +734,13 @@ return; } @@ -1130,7 +734,7 @@ } static void -@@ -825,14 +759,10 @@ +@@ -822,14 +756,10 @@ return; } @@ -1146,7 +750,7 @@ } static void -@@ -848,15 +778,10 @@ +@@ -845,15 +775,10 @@ return; } @@ -1163,7 +767,7 @@ } static void -@@ -872,15 +797,10 @@ +@@ -869,15 +794,10 @@ return; } @@ -1180,7 +784,7 @@ } static void -@@ -896,13 +816,9 @@ +@@ -893,13 +813,9 @@ return; } @@ -1195,7 +799,7 @@ } static void -@@ -919,8 +835,6 @@ +@@ -916,8 +832,6 @@ return; } @@ -1204,7 +808,7 @@ op->status = status; op->list = g_list_copy (changes); -@@ -934,9 +848,7 @@ +@@ -931,9 +845,7 @@ l->data = new_ccc; } @@ -1215,7 +819,7 @@ } static void -@@ -953,17 +865,13 @@ +@@ -950,17 +862,13 @@ return; } @@ -1234,7 +838,7 @@ } static void -@@ -979,14 +887,10 @@ +@@ -976,14 +884,10 @@ return; } @@ -1250,7 +854,7 @@ } static gboolean -@@ -1722,7 +1626,6 @@ +@@ -1724,7 +1628,6 @@ } /* start the open operation */ our_op = e_calendar_new_op (ecal); @@ -1258,7 +862,7 @@ g_mutex_unlock (priv->mutex); -@@ -1735,7 +1638,6 @@ +@@ -1737,7 +1640,6 @@ if (priv->auth_func == NULL) { e_calendar_remove_op (ecal, our_op); @@ -1266,7 +870,7 @@ e_calendar_free_op (our_op); priv->load_state = E_CAL_LOAD_NOT_LOADED; *status = E_CALENDAR_STATUS_AUTHENTICATION_REQUIRED; -@@ -1745,7 +1647,6 @@ +@@ -1747,7 +1649,6 @@ username = e_source_get_property (priv->source, "username"); if (!username) { e_calendar_remove_op (ecal, our_op); @@ -1274,7 +878,7 @@ e_calendar_free_op (our_op); priv->load_state = E_CAL_LOAD_NOT_LOADED; *status = E_CALENDAR_STATUS_AUTHENTICATION_REQUIRED; -@@ -1773,7 +1674,6 @@ +@@ -1775,7 +1676,6 @@ if (!key) { e_calendar_remove_op (ecal, our_op); @@ -1282,7 +886,7 @@ e_calendar_free_op (our_op); priv->load_state = E_CAL_LOAD_NOT_LOADED; *status = E_CALENDAR_STATUS_URI_NOT_LOADED; -@@ -1784,7 +1684,6 @@ +@@ -1786,7 +1686,6 @@ if (!password) { e_calendar_remove_op (ecal, our_op); @@ -1290,7 +894,7 @@ e_calendar_free_op (our_op); priv->load_state = E_CAL_LOAD_NOT_LOADED; *status = E_CALENDAR_STATUS_AUTHENTICATION_REQUIRED; -@@ -1809,7 +1708,6 @@ +@@ -1811,7 +1710,6 @@ if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1298,7 +902,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -1823,14 +1721,11 @@ +@@ -1825,14 +1723,11 @@ CORBA_exception_free (&ev); @@ -1314,7 +918,7 @@ e_calendar_free_op (our_op); if (*status == E_CALENDAR_STATUS_OK) { priv->load_state = E_CAL_LOAD_LOADED; -@@ -1986,8 +1881,6 @@ +@@ -1988,8 +1883,6 @@ our_op = e_calendar_new_op (ecal); @@ -1323,7 +927,7 @@ g_mutex_unlock (ecal->priv->mutex); -@@ -1996,7 +1889,6 @@ +@@ -1998,7 +1891,6 @@ GNOME_Evolution_Calendar_Cal_remove (priv->cal, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1331,7 +935,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2008,14 +1900,11 @@ +@@ -2010,14 +1902,11 @@ CORBA_exception_free (&ev); @@ -1347,7 +951,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -2247,8 +2136,6 @@ +@@ -2249,8 +2138,6 @@ our_op = e_calendar_new_op (ecal); @@ -1356,7 +960,7 @@ /* set it to true so that op does not emit cond signals for all notifications from the backend */ our_op->bool = TRUE; -@@ -2261,7 +2148,6 @@ +@@ -2263,7 +2150,6 @@ GNOME_Evolution_Calendar_Cal_isReadOnly (priv->cal, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1364,7 +968,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2273,9 +2159,7 @@ +@@ -2275,9 +2161,7 @@ CORBA_exception_free (&ev); @@ -1375,7 +979,7 @@ status = our_op->status; -@@ -2283,7 +2167,6 @@ +@@ -2285,7 +2169,6 @@ *read_only = our_op->bool; e_calendar_remove_op (ecal, our_op); @@ -1383,7 +987,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); } -@@ -2326,8 +2209,6 @@ +@@ -2328,8 +2211,6 @@ our_op = e_calendar_new_op (ecal); @@ -1392,7 +996,7 @@ g_mutex_unlock (ecal->priv->mutex); -@@ -2336,7 +2217,6 @@ +@@ -2338,7 +2219,6 @@ GNOME_Evolution_Calendar_Cal_getCalAddress (priv->cal, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1400,7 +1004,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2348,14 +2228,11 @@ +@@ -2350,14 +2230,11 @@ CORBA_exception_free (&ev); @@ -1416,7 +1020,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -2403,8 +2280,6 @@ +@@ -2405,8 +2282,6 @@ our_op = e_calendar_new_op (ecal); @@ -1425,7 +1029,7 @@ g_mutex_unlock (ecal->priv->mutex); -@@ -2413,7 +2288,6 @@ +@@ -2415,7 +2290,6 @@ GNOME_Evolution_Calendar_Cal_getAlarmEmailAddress (priv->cal, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1433,7 +1037,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2425,15 +2299,12 @@ +@@ -2427,15 +2301,12 @@ CORBA_exception_free (&ev); @@ -1450,7 +1054,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -2476,8 +2347,6 @@ +@@ -2478,8 +2349,6 @@ our_op = e_calendar_new_op (ecal); @@ -1459,7 +1063,7 @@ g_mutex_unlock (ecal->priv->mutex); -@@ -2486,7 +2355,6 @@ +@@ -2488,7 +2357,6 @@ GNOME_Evolution_Calendar_Cal_getLdapAttribute (priv->cal, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1467,7 +1071,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2498,15 +2366,12 @@ +@@ -2500,15 +2368,12 @@ CORBA_exception_free (&ev); @@ -1484,7 +1088,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -2539,8 +2404,6 @@ +@@ -2541,8 +2406,6 @@ our_op = e_calendar_new_op (ecal); @@ -1493,7 +1097,7 @@ g_mutex_unlock (ecal->priv->mutex); -@@ -2549,7 +2412,6 @@ +@@ -2551,7 +2414,6 @@ GNOME_Evolution_Calendar_Cal_getStaticCapabilities (priv->cal, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1501,7 +1105,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2561,15 +2423,12 @@ +@@ -2563,15 +2425,12 @@ CORBA_exception_free (&ev); @@ -1518,7 +1122,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -2778,8 +2637,6 @@ +@@ -2780,8 +2639,6 @@ our_op = e_calendar_new_op (ecal); @@ -1527,7 +1131,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -2787,7 +2644,6 @@ +@@ -2789,7 +2646,6 @@ GNOME_Evolution_Calendar_Cal_getDefaultObject (priv->cal, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1535,7 +1139,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2799,9 +2655,7 @@ +@@ -2801,9 +2657,7 @@ CORBA_exception_free (&ev); @@ -1546,7 +1150,7 @@ status = our_op->status; if (status != E_CALENDAR_STATUS_OK) { -@@ -2814,7 +2668,6 @@ +@@ -2816,7 +2670,6 @@ g_free (our_op->string); e_calendar_remove_op (ecal, our_op); @@ -1554,7 +1158,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -2859,15 +2712,12 @@ +@@ -2861,15 +2714,12 @@ our_op = e_calendar_new_op (ecal); @@ -1570,7 +1174,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2879,9 +2729,7 @@ +@@ -2881,9 +2731,7 @@ CORBA_exception_free (&ev); @@ -1581,7 +1185,7 @@ status = our_op->status; if (status != E_CALENDAR_STATUS_OK){ -@@ -2891,7 +2739,6 @@ +@@ -2893,7 +2741,6 @@ } e_calendar_remove_op (ecal, our_op); @@ -1589,7 +1193,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -2936,8 +2783,6 @@ +@@ -2938,8 +2785,6 @@ our_op = e_calendar_new_op (ecal); @@ -1598,7 +1202,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -2945,7 +2790,6 @@ +@@ -2947,7 +2792,6 @@ GNOME_Evolution_Calendar_Cal_getObject (priv->cal, uid, rid ? rid : "", &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1606,7 +1210,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -2957,9 +2801,7 @@ +@@ -2959,9 +2803,7 @@ CORBA_exception_free (&ev); @@ -1617,7 +1221,7 @@ status = our_op->status; if (status != E_CALENDAR_STATUS_OK){ -@@ -3007,7 +2849,6 @@ +@@ -3009,7 +2851,6 @@ g_free (our_op->string); e_calendar_remove_op (ecal, our_op); @@ -1625,7 +1229,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -3053,8 +2894,6 @@ +@@ -3055,8 +2896,6 @@ our_op = e_calendar_new_op (ecal); @@ -1634,7 +1238,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -3062,7 +2901,6 @@ +@@ -3064,7 +2903,6 @@ GNOME_Evolution_Calendar_Cal_getObject (priv->cal, uid, "", &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1642,7 +1246,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -3074,9 +2912,7 @@ +@@ -3076,9 +2914,7 @@ CORBA_exception_free (&ev); @@ -1653,7 +1257,7 @@ status = our_op->status; if (status != E_CALENDAR_STATUS_OK){ -@@ -3134,7 +2970,6 @@ +@@ -3136,7 +2972,6 @@ g_free (our_op->string); e_calendar_remove_op (ecal, our_op); @@ -1661,7 +1265,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -3204,8 +3039,6 @@ +@@ -3206,8 +3041,6 @@ our_op = e_calendar_new_op (ecal); @@ -1670,7 +1274,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -3214,7 +3047,6 @@ +@@ -3216,7 +3049,6 @@ if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1678,7 +1282,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -3226,15 +3058,12 @@ +@@ -3228,15 +3060,12 @@ CORBA_exception_free (&ev); @@ -1695,7 +1299,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -3304,8 +3133,6 @@ +@@ -3306,8 +3135,6 @@ our_op = e_calendar_new_op (ecal); @@ -1704,7 +1308,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -3314,7 +3141,6 @@ +@@ -3316,7 +3143,6 @@ if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1712,7 +1316,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -3326,15 +3152,12 @@ +@@ -3328,15 +3154,12 @@ CORBA_exception_free (&ev); @@ -1729,7 +1333,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -3437,8 +3260,6 @@ +@@ -3439,8 +3262,6 @@ our_op = e_calendar_new_op (ecal); @@ -1738,7 +1342,7 @@ g_mutex_unlock (ecal->priv->mutex); /* create the CORBA user list to be passed to the backend */ -@@ -3458,7 +3279,6 @@ +@@ -3460,7 +3281,6 @@ if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1746,7 +1350,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -3470,15 +3290,12 @@ +@@ -3472,15 +3292,12 @@ CORBA_exception_free (&ev); @@ -1763,7 +1367,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4169,8 +3986,6 @@ +@@ -4174,8 +3991,6 @@ our_op = e_calendar_new_op (ecal); @@ -1772,7 +1376,7 @@ g_mutex_unlock (ecal->priv->mutex); e_cal_component_get_uid (comp, &uid); -@@ -4180,7 +3995,6 @@ +@@ -4185,7 +4000,6 @@ GNOME_Evolution_Calendar_Cal_discardAlarm (priv->cal, uid, auid, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1780,7 +1384,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -4192,14 +4006,11 @@ +@@ -4197,14 +4011,11 @@ CORBA_exception_free (&ev); @@ -1796,7 +1400,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4415,8 +4226,6 @@ +@@ -4420,8 +4231,6 @@ our_op = e_calendar_new_op (ecal); @@ -1805,7 +1409,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -4424,7 +4233,6 @@ +@@ -4429,7 +4238,6 @@ GNOME_Evolution_Calendar_Cal_createObject (priv->cal, icalcomponent_as_ical_string (icalcomp), &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1813,7 +1417,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -4436,16 +4244,13 @@ +@@ -4441,9 +4249,7 @@ CORBA_exception_free (&ev); @@ -1824,14 +1428,15 @@ status = our_op->status; if (uid) - *uid = our_op->uid; +@@ -4453,7 +4259,6 @@ + } e_calendar_remove_op (ecal, our_op); - g_mutex_unlock (our_op->mutex); e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4495,8 +4300,6 @@ +@@ -4503,8 +4308,6 @@ our_op = e_calendar_new_op (ecal); @@ -1840,7 +1445,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -4504,7 +4307,6 @@ +@@ -4512,7 +4315,6 @@ GNOME_Evolution_Calendar_Cal_modifyObject (priv->cal, icalcomponent_as_ical_string (icalcomp), mod, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1848,7 +1453,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -4516,14 +4318,11 @@ +@@ -4524,14 +4326,11 @@ CORBA_exception_free (&ev); @@ -1864,7 +1469,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4576,8 +4375,6 @@ +@@ -4584,8 +4383,6 @@ our_op = e_calendar_new_op (ecal); @@ -1873,7 +1478,7 @@ g_mutex_unlock (ecal->priv->mutex); -@@ -4586,7 +4383,6 @@ +@@ -4594,7 +4391,6 @@ GNOME_Evolution_Calendar_Cal_removeObject (priv->cal, uid, rid ? rid : "", mod, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1881,7 +1486,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -4598,14 +4394,11 @@ +@@ -4606,14 +4402,11 @@ CORBA_exception_free (&ev); @@ -1897,7 +1502,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4670,8 +4463,6 @@ +@@ -4678,8 +4471,6 @@ our_op = e_calendar_new_op (ecal); @@ -1906,7 +1511,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -4679,7 +4470,6 @@ +@@ -4687,7 +4478,6 @@ GNOME_Evolution_Calendar_Cal_receiveObjects (priv->cal, icalcomponent_as_ical_string (icalcomp), &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1914,7 +1519,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -4691,14 +4481,11 @@ +@@ -4699,14 +4489,11 @@ CORBA_exception_free (&ev); @@ -1930,7 +1535,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4744,8 +4531,6 @@ +@@ -4752,8 +4539,6 @@ our_op = e_calendar_new_op (ecal); @@ -1939,7 +1544,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -4753,7 +4538,6 @@ +@@ -4761,7 +4546,6 @@ GNOME_Evolution_Calendar_Cal_sendObjects (priv->cal, icalcomponent_as_ical_string (icalcomp), &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1947,7 +1552,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -4765,9 +4549,7 @@ +@@ -4773,9 +4557,7 @@ CORBA_exception_free (&ev); @@ -1958,7 +1563,7 @@ status = our_op->status; *users = our_op->list; -@@ -4788,7 +4570,6 @@ +@@ -4796,7 +4578,6 @@ g_free (our_op->string); e_calendar_remove_op (ecal, our_op); @@ -1966,7 +1571,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4833,8 +4614,6 @@ +@@ -4841,8 +4622,6 @@ our_op = e_calendar_new_op (ecal); @@ -1975,7 +1580,7 @@ g_mutex_unlock (priv->mutex); /* Check for well known zones and in the cache */ -@@ -4843,7 +4622,6 @@ +@@ -4851,7 +4630,6 @@ /* If tzid is NULL or "" we return NULL, since it is a 'local time'. */ if (!tzid || !tzid[0]) { e_calendar_remove_op (ecal, our_op); @@ -1983,7 +1588,7 @@ e_calendar_free_op (our_op); *zone = NULL; -@@ -4861,7 +4639,6 @@ +@@ -4869,7 +4647,6 @@ if (*zone) { e_calendar_remove_op (ecal, our_op); @@ -1991,7 +1596,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_OK, error); -@@ -4873,7 +4650,6 @@ +@@ -4881,7 +4658,6 @@ GNOME_Evolution_Calendar_Cal_getTimezone (priv->cal, tzid, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -1999,7 +1604,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -4885,9 +4661,7 @@ +@@ -4893,9 +4669,7 @@ CORBA_exception_free (&ev); @@ -2010,7 +1615,7 @@ status = our_op->status; if (status != E_CALENDAR_STATUS_OK){ -@@ -4901,7 +4675,6 @@ +@@ -4909,7 +4683,6 @@ if (!icalcomp) { e_calendar_remove_op (ecal, our_op); @@ -2018,7 +1623,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4912,7 +4685,6 @@ +@@ -4920,7 +4693,6 @@ icaltimezone_free (*zone, 1); e_calendar_remove_op (ecal, our_op); @@ -2026,7 +1631,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_OBJECT_NOT_FOUND, error); -@@ -4922,7 +4694,6 @@ +@@ -4930,7 +4702,6 @@ g_hash_table_insert (priv->timezones, icaltimezone_get_tzid (*zone), *zone); e_calendar_remove_op (ecal, our_op); @@ -2034,7 +1639,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -4967,15 +4738,12 @@ +@@ -4975,15 +4746,12 @@ our_op = e_calendar_new_op (ecal); @@ -2050,7 +1655,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_OK, error); -@@ -4984,7 +4752,6 @@ +@@ -4992,7 +4760,6 @@ icalcomp = icaltimezone_get_component (izone); if (!icalcomp) { e_calendar_remove_op (ecal, our_op); @@ -2058,7 +1663,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_INVALID_ARG, error); -@@ -4999,7 +4766,6 @@ +@@ -5007,7 +4774,6 @@ GNOME_Evolution_Calendar_Cal_addTimezone (priv->cal, tzobj, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -2066,7 +1671,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -5011,14 +4777,11 @@ +@@ -5019,14 +4785,11 @@ CORBA_exception_free (&ev); @@ -2082,7 +1687,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -5060,8 +4823,6 @@ +@@ -5068,8 +4831,6 @@ our_op = e_calendar_new_op (ecal); @@ -2091,7 +1696,7 @@ g_mutex_unlock (ecal->priv->mutex); CORBA_exception_init (&ev); -@@ -5071,7 +4832,6 @@ +@@ -5079,7 +4840,6 @@ if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -2099,7 +1704,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -5083,9 +4843,7 @@ +@@ -5091,9 +4851,7 @@ CORBA_exception_free (&ev); @@ -2110,7 +1715,7 @@ status = our_op->status; *query = our_op->query; -@@ -5093,7 +4851,6 @@ +@@ -5101,7 +4859,6 @@ bonobo_object_unref (BONOBO_OBJECT (our_op->listener)); e_calendar_remove_op (ecal, our_op); @@ -2118,7 +1723,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (status, error); -@@ -5174,15 +4931,12 @@ +@@ -5146,15 +4903,12 @@ our_op = e_calendar_new_op (ecal); @@ -2134,7 +1739,7 @@ e_calendar_free_op (our_op); E_CALENDAR_CHECK_STATUS (E_CALENDAR_STATUS_INVALID_ARG, error); -@@ -5197,7 +4951,6 @@ +@@ -5169,7 +4923,6 @@ GNOME_Evolution_Calendar_Cal_setDefaultTimezone (priv->cal, tzobj, &ev); if (BONOBO_EX (&ev)) { e_calendar_remove_op (ecal, our_op); @@ -2142,7 +1747,7 @@ e_calendar_free_op (our_op); CORBA_exception_free (&ev); -@@ -5209,9 +4962,7 @@ +@@ -5181,9 +4934,7 @@ CORBA_exception_free (&ev); @@ -2153,7 +1758,7 @@ status = our_op->status; -@@ -5223,7 +4974,6 @@ +@@ -5195,7 +4946,6 @@ } e_calendar_remove_op (ecal, our_op); diff --git a/evolution-data-server-1.9.92-e-passwords.patch b/evolution-data-server-1.9.92-e-passwords.patch index 571bf31..a374cde 100644 --- a/evolution-data-server-1.9.92-e-passwords.patch +++ b/evolution-data-server-1.9.92-e-passwords.patch @@ -1,5 +1,5 @@ ---- evolution-data-server-1.10.0/libedataserverui/e-passwords.h.e-passwords 2007-01-03 05:09:27.000000000 -0500 -+++ evolution-data-server-1.10.0/libedataserverui/e-passwords.h 2007-03-14 18:05:55.000000000 -0400 +--- evolution-data-server-1.11.2/libedataserverui/e-passwords.h.e-passwords 2007-04-18 06:10:16.000000000 -0400 ++++ evolution-data-server-1.11.2/libedataserverui/e-passwords.h 2007-05-18 12:03:54.000000000 -0400 @@ -28,45 +28,65 @@ G_BEGIN_DECLS @@ -97,8 +97,8 @@ G_END_DECLS ---- evolution-data-server-1.10.0/libedataserverui/e-passwords.c.e-passwords 2007-02-09 03:38:09.000000000 -0500 -+++ evolution-data-server-1.10.0/libedataserverui/e-passwords.c 2007-03-14 20:27:01.000000000 -0400 +--- evolution-data-server-1.11.2/libedataserverui/e-passwords.c.e-passwords 2007-04-18 06:10:16.000000000 -0400 ++++ evolution-data-server-1.11.2/libedataserverui/e-passwords.c 2007-05-18 12:03:54.000000000 -0400 @@ -23,18 +23,29 @@ */ @@ -139,7 +139,7 @@ */ #ifdef HAVE_CONFIG_H -@@ -42,159 +53,384 @@ +@@ -42,159 +53,381 @@ #endif #include @@ -157,7 +157,7 @@ +#include "libedataserver/e-flag.h" #include "libedataserver/e-url.h" - #if WITH_GNOME_KEYRING + #ifdef WITH_GNOME_KEYRING #include #endif @@ -439,10 +439,7 @@ static void -ep_msg_free(EPassMsg *msg) +ep_msg_dispatch (EPassMsg *msg) - { -- e_msgport_destroy(msg->msg.reply_port); -- g_free(msg->password); -- g_free(msg); ++{ + msg->callback (msg); + e_flag_set (msg->done); +} @@ -460,13 +457,14 @@ + g_async_queue_unlock (express_queue); + + return success; - } - - static void --ep_msg_send(EPassMsg *msg) ++} ++ ++static void +ep_msg_send (EPassMsg *msg) { -- int needidle = 0; +- e_msgport_destroy(msg->msg.reply_port); +- g_free(msg->password); +- g_free(msg); + GMainContext *context; + + context = g_main_context_default (); @@ -476,14 +474,6 @@ + + if (!(msg->expedite && ep_msg_expedite (msg))) + g_thread_pool_push (dispatcher, msg, NULL); - -- LOCK(); -- e_dlist_addtail(&request_list, (EDListNode *)&msg->msg); -- if (!idle_id) { -- if (!msg->ismain) -- idle_id = g_idle_add(ep_idle_dispatch, NULL); -+ g_debug ("%s: in main thread? %d", G_STRFUNC, -+ g_main_context_is_owner (context)); + + /* Don't block the main loop. */ + if (g_main_context_is_owner (context)) @@ -491,9 +481,10 @@ + g_main_context_iteration (context, TRUE); + else + e_flag_wait (msg->done); -+} -+ -+static void + } + + static void +-ep_msg_send(EPassMsg *msg) +ep_msg_free (EPassMsg *msg) +{ + e_flag_free (msg->done); @@ -527,9 +518,15 @@ + +static gboolean +ep_dialog_run (EPassMsg *msg) -+{ + { +- int needidle = 0; + /* This function must run in the main thread. */ -+ + +- LOCK(); +- e_dlist_addtail(&request_list, (EDListNode *)&msg->msg); +- if (!idle_id) { +- if (!msg->ismain) +- idle_id = g_idle_add(ep_idle_dispatch, NULL); + EPassDialogData *data = msg->data; + GtkBox *box; + GtkWidget *dialog; @@ -619,14 +616,14 @@ -/* the functions that actually do the work */ +/* The rest of these static functions must run in the dispatcher thread. */ + - #if WITH_GNOME_KEYRING + #ifdef WITH_GNOME_KEYRING static void -ep_clear_passwords_keyring(EPassMsg *msg) +ep_clear_passwords_keyring (EPassMsg *msg) { GnomeKeyringAttributeList *attributes; GnomeKeyringAttribute attribute; -@@ -205,11 +441,8 @@ +@@ -205,11 +438,8 @@ result = gnome_keyring_get_default_keyring_sync (&default_keyring); if (!default_keyring) { @@ -640,7 +637,7 @@ default_keyring = g_strdup ("default"); } -@@ -239,38 +472,44 @@ +@@ -239,38 +469,44 @@ } g_free (default_keyring); @@ -686,7 +683,7 @@ - memset (value, 0, strlen (value)); - g_free (value); - return TRUE; -+#if WITH_GNOME_KEYRING ++#ifdef WITH_GNOME_KEYRING + if (gnome_keyring_is_available ()) + ep_clear_passwords_keyring (msg); + else @@ -696,14 +693,14 @@ +#endif } - #if WITH_GNOME_KEYRING + #ifdef WITH_GNOME_KEYRING static void -ep_forget_passwords_keyring(EPassMsg *msg) +ep_forget_passwords_keyring (EPassMsg *msg) { GnomeKeyringAttributeList *attributes; GnomeKeyringAttribute attribute; -@@ -281,11 +520,8 @@ +@@ -281,11 +517,8 @@ result = gnome_keyring_get_default_keyring_sync (&default_keyring); if (!default_keyring) { @@ -717,7 +714,7 @@ default_keyring = g_strdup ("default"); } d(g_print("Get Default %d\n", result)); -@@ -316,69 +552,54 @@ +@@ -316,69 +549,54 @@ g_free (default_keyring); /* free up the session passwords */ @@ -784,7 +781,7 @@ - g_free (keycopy); - - return path; -+#if WITH_GNOME_KEYRING ++#ifdef WITH_GNOME_KEYRING + if (gnome_keyring_is_available ()) + ep_forget_passwords_keyring (msg); + else @@ -794,7 +791,7 @@ +#endif } - #if WITH_GNOME_KEYRING + #ifdef WITH_GNOME_KEYRING static void -ep_remember_password_keyring(EPassMsg *msg) +ep_remember_password_keyring (EPassMsg *msg) @@ -814,7 +811,7 @@ guint32 item_id; if (!strcmp (uri->protocol, "ldap") && !uri->user) { -@@ -419,48 +640,48 @@ +@@ -419,48 +637,48 @@ d(g_print("Remember %s: %d/%d\n", msg->key, result, item_id)); /* now remove it from our session hash */ @@ -882,7 +879,7 @@ +static void +ep_remember_password (EPassMsg *msg) +{ -+#if WITH_GNOME_KEYRING ++#ifdef WITH_GNOME_KEYRING + if (gnome_keyring_is_available ()) + ep_remember_password_keyring (msg); + else @@ -892,8 +889,8 @@ +#endif } - #if WITH_GNOME_KEYRING -@@ -472,7 +693,6 @@ + #ifdef WITH_GNOME_KEYRING +@@ -472,7 +690,6 @@ GnomeKeyringResult result; GList *matches = NULL, *tmp; char *default_keyring = NULL; @@ -901,7 +898,7 @@ EUri *uri = e_uri_new (msg->key); if (!strcmp (uri->protocol, "ldap") && !uri->user) { -@@ -486,27 +706,17 @@ +@@ -486,27 +703,17 @@ uri->user = keycopy; } @@ -932,7 +929,7 @@ default_keyring = g_strdup ("default"); } -@@ -567,35 +777,44 @@ +@@ -567,35 +774,44 @@ } g_free (default_keyring); @@ -984,7 +981,7 @@ +static void +ep_forget_password (EPassMsg *msg) +{ -+#if WITH_GNOME_KEYRING ++#ifdef WITH_GNOME_KEYRING + if (gnome_keyring_is_available ()) + ep_forget_password_keyring (msg); + else @@ -994,9 +991,9 @@ +#endif +} - #if WITH_GNOME_KEYRING + #ifdef WITH_GNOME_KEYRING static void -@@ -605,11 +824,11 @@ +@@ -605,11 +821,11 @@ GnomeKeyringAttributeList *attributes; GnomeKeyringAttribute attribute; GnomeKeyringResult result; @@ -1011,7 +1008,7 @@ } else { EUri *uri = e_uri_new (msg->key); -@@ -683,287 +902,154 @@ +@@ -683,287 +899,154 @@ } } @@ -1105,7 +1102,7 @@ - msg->oldpass = msg->password; - ep_add_password(msg); - } - #if WITH_GNOME_KEYRING + #ifdef WITH_GNOME_KEYRING - if (*msg->remember && type == E_PASSWORDS_REMEMBER_FOREVER) { - if (gnome_keyring_is_available()) - ep_remember_password_keyring(msg); @@ -1136,13 +1133,13 @@ - mw = (EPassMsg *)request_list.head; - mn = (EPassMsg *)mw->msg.ln.next; - while (mn) { --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - if ((mw->dispatch == (gnome_keyring_is_available() ? ep_forget_password_keyring : ep_forget_password_file) -#else - if ((mw->dispatch == ep_forget_password_file + ep_get_password_keyfile (msg); #endif --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - || mw->dispatch == (gnome_keyring_is_available() ? ep_get_password_keyring : ep_get_password_file) -#else - || mw->dispatch == ep_get_password_file @@ -1255,7 +1252,7 @@ - gtk_widget_grab_focus (msg->entry); - - if ((msg->flags & E_PASSWORDS_REPROMPT)) { --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - if (gnome_keyring_is_available()) - ep_get_password_keyring(msg); - else @@ -1389,7 +1386,7 @@ * * Set the offline-state of the application. This is a work-around * for having the backends fully offline aware, and returns a -@@ -972,10 +1058,11 @@ +@@ -972,10 +1055,11 @@ * FIXME: This is not a permanent api, review post 2.0. **/ void @@ -1404,11 +1401,11 @@ } /** -@@ -986,150 +1073,137 @@ +@@ -986,150 +1070,137 @@ void e_passwords_forget_passwords (void) { --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - EPassMsg *msg = ep_msg_new(gnome_keyring_is_available() ? ep_forget_passwords_keyring : ep_forget_passwords_file); -#else - EPassMsg *msg = ep_msg_new(ep_forget_passwords_file); @@ -1434,7 +1431,7 @@ -e_passwords_clear_passwords (const char *component_name) +e_passwords_clear_passwords (const gchar *component) { --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - EPassMsg *msg = ep_msg_new(gnome_keyring_is_available() ? ep_clear_passwords_keyring : ep_clear_passwords_file); -#else - EPassMsg *msg = ep_msg_new(ep_clear_passwords_file); @@ -1471,7 +1468,7 @@ + g_return_if_fail (component != NULL); + g_return_if_fail (key != NULL); --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - msg = ep_msg_new(gnome_keyring_is_available() ? ep_remember_password_keyring : ep_remember_password_file); -#else - msg = ep_msg_new(ep_remember_password_file); @@ -1505,7 +1502,7 @@ + g_return_if_fail (component != NULL); + g_return_if_fail (key != NULL); --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - msg = ep_msg_new(gnome_keyring_is_available() ? ep_forget_password_keyring : ep_forget_password_file); -#else - msg = ep_msg_new(ep_forget_password_file); @@ -1542,7 +1539,7 @@ + g_return_val_if_fail (component != NULL, NULL); + g_return_val_if_fail (key != NULL, NULL); --#if WITH_GNOME_KEYRING +-#ifdef WITH_GNOME_KEYRING - msg = ep_msg_new(gnome_keyring_is_available() ? ep_get_password_keyring : ep_get_password_file); -#else - msg = ep_msg_new(ep_get_password_file); @@ -1608,7 +1605,7 @@ * @key: key to store the password under * @prompt: prompt string * @secret: whether or not the password text should be ***ed out -@@ -1146,241 +1220,45 @@ +@@ -1146,241 +1217,45 @@ * return value is non-%NULL and @remember_type is not * E_PASSWORDS_DO_NOT_REMEMBER. **/ @@ -1879,8 +1876,8 @@ - return (char *)plain; + return password; } ---- evolution-data-server-1.10.0/libedataserver/e-msgport.h.e-passwords 2007-02-26 04:52:17.000000000 -0500 -+++ evolution-data-server-1.10.0/libedataserver/e-msgport.h 2007-03-14 18:05:55.000000000 -0400 +--- evolution-data-server-1.11.2/libedataserver/e-msgport.h.e-passwords 2007-04-18 06:10:18.000000000 -0400 ++++ evolution-data-server-1.11.2/libedataserver/e-msgport.h 2007-05-18 12:03:54.000000000 -0400 @@ -54,7 +54,7 @@ /* header for any message */ diff --git a/evolution-data-server.spec b/evolution-data-server.spec index b0adb28..7a69a43 100644 --- a/evolution-data-server.spec +++ b/evolution-data-server.spec @@ -9,7 +9,7 @@ %define orbit2_version 2.9.8 %define libbonobo_version 2.4.2 -%define eds_base_version 1.10 +%define eds_base_version 1.12 %define eds_api_version 1.2 %define use_gtk_doc 0 @@ -25,8 +25,8 @@ ### Abstract ### Name: evolution-data-server -Version: 1.10.1 -Release: 6%{?dist} +Version: 1.11.2 +Release: 1%{?dist} License: LGPL Group: System Environment/Libraries Summary: Backend data server for Evolution @@ -48,47 +48,29 @@ Patch12: evolution-data-server-1.7.91-maybe-fix-crash.patch # RH bug #203915 Patch13: evolution-data-server-1.8.0-fix-camel-malloc.patch -# GNOME bug #360240 -Patch14: evolution-data-server-1.8.1-warn-unused-variable.patch - -# GNOME bug #360619 -Patch15: evolution-data-server-1.8.1-warn-incompatible-pointer-type.patch - -# GNOME bug #363965 -Patch16: evolution-data-server-1.9.1-kill-ememory.patch - -# RH bug #203058 -Patch17: evolution-data-server-1.9.2-fix-name-selector-dialog.patch - -# RH bug #210142 -Patch18: evolution-data-server-1.9.2-strftime.patch - -# GNOME bug #373117 -Patch19: evolution-data-server-1.9.3-e-source-color.patch +# GNOME bug #363695 +Patch14: evolution-data-server-1.9.1-kill-ememory.patch # GNOME bug #415891 -Patch20: evolution-data-server-1.9.92-e-flag.patch +Patch15: evolution-data-server-1.9.92-e-flag.patch # GNOME bug #376991 -Patch21: evolution-data-server-1.9.92-e-passwords.patch +Patch16: evolution-data-server-1.9.92-e-passwords.patch # GNOME bug #415922 -Patch22: evolution-data-server-1.9.92-isa-support.patch +Patch17: evolution-data-server-1.9.92-isa-support.patch # GNOME bug #417999 -Patch23: evolution-data-server-1.10.0-code-cleanup.patch - -# RH bug #235290 / GNOME bug #424373 -Patch24: evolution-data-server-1.10.1-apop-auth-vulnerability.patch - -# Fix a dangling pointer (no bug number). -Patch25: evolution-data-server-1.10.1-e-source-group.patch +Patch18: evolution-data-server-1.10.0-code-cleanup.patch # GNOME bug #373146 -Patch26: evolution-data-server-1.10.1-camel-folder-summary-crash.patch +Patch19: evolution-data-server-1.10.1-camel-folder-summary-crash.patch # RH bug #215634 -Patch27: evolution-data-server-1.10.1-camel-certdb-nss-cert-get.patch +Patch20: evolution-data-server-1.10.1-camel-certdb-nss-cert-get.patch + +# Fix the usual implicit function declarations +Patch21: evolution-data-server-1.11.2-implicit-function-declarations.patch ### Dependencies ### @@ -173,20 +155,14 @@ evolution-data-server. %patch11 -p1 -b .no-gnome-common %patch12 -p1 -b .maybe-fix-crash %patch13 -p1 -b .fix-camel-malloc -%patch14 -p1 -b .warn-unused-variable -%patch15 -p1 -b .warn-incompatible-pointer-type -%patch16 -p1 -b .kill-ememory -%patch17 -p1 -b .fix-name-selector-dialog -%patch18 -p1 -b .strftime -%patch19 -p1 -b .e-source-color -%patch20 -p1 -b .e-flag -%patch21 -p1 -b .e-passwords -%patch22 -p1 -b .isa-support -%patch23 -p1 -b .code-cleanup -%patch24 -p1 -b .apop-auth-vulnerability -%patch25 -p1 -b .e-source-group -%patch26 -p1 -b .camel-folder-symmary-crash -%patch27 -p1 -b .camel-certdb-nss-cert-get +%patch14 -p1 -b .kill-ememory +%patch15 -p1 -b .e-flag +%patch16 -p1 -b .e-passwords +%patch17 -p1 -b .isa-support +%patch18 -p1 -b .code-cleanup +%patch19 -p1 -b .camel-folder-symmary-crash +%patch20 -p1 -b .camel-certdb-nss-cert-get +%patch21 -p1 -b .implicit-function-declarations mkdir -p krb5-fakeprefix/include mkdir -p krb5-fakeprefix/lib @@ -404,6 +380,18 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/pkgconfig/libexchange-storage-%{eds_api_version}.pc %changelog +* Fri May 18 2007 Matthew Barnes - 1.11.2-1.fc7 +- Update to 1.11.2 +- Bump eds_base_version to 1.12. +- Add patch to fix implicit function declarations. +- Remove patch for RH bug #203058 (fixed upstream). +- Remove patch for RH bug #210142 (fixed upstream). +- Remove patch for RH bug #235290 (fixed upstream). +- Remove patch for GNOME bug #360240 (fixed upstream). +- Remove patch for GNOME bug #360619 (fixed upstream). +- Remove patch for GNOME bug #373117 (fixed upstream). +- Revise patch for GNOME bug #415891 (partially fixed upstream). + * Wed May 09 2007 Matthew Barnes - 1.10.1-6.fc7 - Add patch for RH bug #215634 (read NSS certificates more reliably). diff --git a/sources b/sources index aedcef8..a7564de 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -1175bf76756009975f684116e76638c3 evolution-data-server-1.10.1.tar.bz2 +69cc87c19f7178557902900eebd5de82 evolution-data-server-1.11.2.tar.bz2