From 5bb8f2a27c3b082ec87819ae188d4a5aef761d6d Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Wed, 29 Aug 2007 22:40:09 +0000 Subject: [PATCH] - Revise patch for GNOME bug #362638 to fix GNOME bug #357175 (Evolution fails to close after IMAP alert has been displayed). --- evolution-2.8.1-kill-ethread.patch | 391 +++++++++++++++++------------ evolution.spec | 6 +- 2 files changed, 229 insertions(+), 168 deletions(-) diff --git a/evolution-2.8.1-kill-ethread.patch b/evolution-2.8.1-kill-ethread.patch index 8bbd0be..c4efbc8 100644 --- a/evolution-2.8.1-kill-ethread.patch +++ b/evolution-2.8.1-kill-ethread.patch @@ -1,5 +1,6 @@ ---- evolution-2.11.90/mail/mail-send-recv.c.kill-ethread 2007-07-28 17:08:12.000000000 -0400 -+++ evolution-2.11.90/mail/mail-send-recv.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-send-recv.c.kill-ethread evolution-2.11.91/mail/mail-send-recv.c +--- evolution-2.11.91/mail/mail-send-recv.c.kill-ethread 2007-07-28 17:08:12.000000000 -0400 ++++ evolution-2.11.91/mail/mail-send-recv.c 2007-08-29 17:39:34.000000000 -0400 @@ -770,23 +770,22 @@ receive_get_folder(CamelFilterDriver *d, /* ********************************************************************** */ @@ -82,9 +83,10 @@ } else { receive_done ("", data); } ---- evolution-2.11.90/mail/mail-component.c.kill-ethread 2007-08-09 02:46:47.000000000 -0400 -+++ evolution-2.11.90/mail/mail-component.c 2007-08-15 13:37:37.000000000 -0400 -@@ -1001,7 +1001,7 @@ impl_handleURI (PortableServer_Servant s +diff -up evolution-2.11.91/mail/mail-component.c.kill-ethread evolution-2.11.91/mail/mail-component.c +--- evolution-2.11.91/mail/mail-component.c.kill-ethread 2007-08-24 02:49:43.000000000 -0400 ++++ evolution-2.11.91/mail/mail-component.c 2007-08-29 17:39:34.000000000 -0400 +@@ -1005,7 +1005,7 @@ impl_handleURI (PortableServer_Servant s if (camel_url_get_param(url, "uid") != NULL) { char *curi = em_uri_to_camel(uri); @@ -93,8 +95,9 @@ g_free(curi); } else { g_warning("email uri's must include a uid parameter"); ---- evolution-2.11.90/mail/mail-ops.c.kill-ethread 2007-07-05 02:09:38.000000000 -0400 -+++ evolution-2.11.90/mail/mail-ops.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-ops.c.kill-ethread evolution-2.11.91/mail/mail-ops.c +--- evolution-2.11.91/mail/mail-ops.c.kill-ethread 2007-07-05 02:09:38.000000000 -0400 ++++ evolution-2.11.91/mail/mail-ops.c 2007-08-29 17:39:34.000000000 -0400 @@ -75,7 +75,7 @@ /* used for both just filtering a folder + uid's, and for filtering a whole folder */ /* used both for fetching mail, and for filtering mail */ @@ -2224,8 +2227,9 @@ return id; } ---- evolution-2.11.90/mail/em-folder-utils.c.kill-ethread 2007-08-09 02:46:46.000000000 -0400 -+++ evolution-2.11.90/mail/em-folder-utils.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-folder-utils.c.kill-ethread evolution-2.11.91/mail/em-folder-utils.c +--- evolution-2.11.91/mail/em-folder-utils.c.kill-ethread 2007-08-09 02:46:46.000000000 -0400 ++++ evolution-2.11.91/mail/em-folder-utils.c 2007-08-29 17:39:34.000000000 -0400 @@ -85,7 +85,7 @@ emfu_is_special_local_folder (const char } @@ -2453,8 +2457,9 @@ return id; } ---- evolution-2.11.90/mail/importers/elm-importer.c.kill-ethread 2007-07-05 02:09:35.000000000 -0400 -+++ evolution-2.11.90/mail/importers/elm-importer.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/importers/elm-importer.c.kill-ethread evolution-2.11.91/mail/importers/elm-importer.c +--- evolution-2.11.91/mail/importers/elm-importer.c.kill-ethread 2007-07-05 02:09:35.000000000 -0400 ++++ evolution-2.11.91/mail/importers/elm-importer.c 2007-08-29 17:39:34.000000000 -0400 @@ -51,7 +51,7 @@ #define d(x) x @@ -2553,8 +2558,9 @@ return id; } ---- evolution-2.11.90/mail/importers/mail-importer.c.kill-ethread 2007-07-05 02:09:35.000000000 -0400 -+++ evolution-2.11.90/mail/importers/mail-importer.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/importers/mail-importer.c.kill-ethread evolution-2.11.91/mail/importers/mail-importer.c +--- evolution-2.11.91/mail/importers/mail-importer.c.kill-ethread 2007-07-05 02:09:35.000000000 -0400 ++++ evolution-2.11.91/mail/importers/mail-importer.c 2007-08-29 17:39:34.000000000 -0400 @@ -132,7 +132,7 @@ struct _BonoboObject *mail_importer_fact } @@ -2691,8 +2697,9 @@ } struct _import_folders_data { ---- evolution-2.11.90/mail/importers/pine-importer.c.kill-ethread 2007-07-05 02:09:35.000000000 -0400 -+++ evolution-2.11.90/mail/importers/pine-importer.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/importers/pine-importer.c.kill-ethread evolution-2.11.91/mail/importers/pine-importer.c +--- evolution-2.11.91/mail/importers/pine-importer.c.kill-ethread 2007-07-05 02:09:35.000000000 -0400 ++++ evolution-2.11.91/mail/importers/pine-importer.c 2007-08-29 17:39:34.000000000 -0400 @@ -56,7 +56,7 @@ #define d(x) x @@ -2792,9 +2799,10 @@ return id; } ---- evolution-2.11.90/mail/em-utils.c.kill-ethread 2007-08-15 13:37:37.000000000 -0400 -+++ evolution-2.11.90/mail/em-utils.c 2007-08-15 13:37:37.000000000 -0400 -@@ -1908,7 +1908,7 @@ em_utils_in_addressbook(CamelInternetAdd +diff -up evolution-2.11.91/mail/em-utils.c.kill-ethread evolution-2.11.91/mail/em-utils.c +--- evolution-2.11.91/mail/em-utils.c.kill-ethread 2007-08-29 17:39:34.000000000 -0400 ++++ evolution-2.11.91/mail/em-utils.c 2007-08-29 17:39:34.000000000 -0400 +@@ -1912,7 +1912,7 @@ em_utils_in_addressbook(CamelInternetAdd ESource *source = s->data; GList *contacts; EBook *book; @@ -2803,8 +2811,9 @@ d(printf(" checking '%s'\n", e_source_get_uri(source))); ---- evolution-2.11.90/mail/mail-vfolder.c.kill-ethread 2007-07-05 02:09:37.000000000 -0400 -+++ evolution-2.11.90/mail/mail-vfolder.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-vfolder.c.kill-ethread evolution-2.11.91/mail/mail-vfolder.c +--- evolution-2.11.91/mail/mail-vfolder.c.kill-ethread 2007-07-05 02:09:37.000000000 -0400 ++++ evolution-2.11.91/mail/mail-vfolder.c 2007-08-29 17:39:34.000000000 -0400 @@ -21,7 +21,7 @@ */ @@ -3039,8 +3048,9 @@ from = em_uri_from_camel(cfrom); to = em_uri_from_camel(cto); ---- evolution-2.11.90/mail/em-format-html.c.kill-ethread 2007-08-09 02:46:47.000000000 -0400 -+++ evolution-2.11.90/mail/em-format-html.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-format-html.c.kill-ethread evolution-2.11.91/mail/em-format-html.c +--- evolution-2.11.91/mail/em-format-html.c.kill-ethread 2007-08-27 02:14:40.000000000 -0400 ++++ evolution-2.11.91/mail/em-format-html.c 2007-08-29 17:39:34.000000000 -0400 @@ -165,7 +165,7 @@ efh_gtkhtml_destroy(GtkHTML *html, EMFor if (efh->priv->format_timeout_id != 0) { g_source_remove(efh->priv->format_timeout_id); @@ -3050,7 +3060,7 @@ efh->priv->format_timeout_msg = NULL; } -@@ -1193,7 +1193,7 @@ efh_builtin_init(EMFormatHTMLClass *efhc +@@ -1202,7 +1202,7 @@ efh_builtin_init(EMFormatHTMLClass *efhc /* Sigh, this is so we have a cancellable, async rendering thread */ struct _format_msg { @@ -3059,7 +3069,7 @@ EMFormatHTML *format; EMFormat *format_source; -@@ -1203,14 +1203,15 @@ struct _format_msg { +@@ -1212,14 +1212,15 @@ struct _format_msg { CamelMimeMessage *message; }; @@ -3078,7 +3088,7 @@ struct _EMFormatHTMLJob *job; struct _EMFormatPURITree *puri_level; int cancelled = FALSE; -@@ -1295,10 +1296,9 @@ static void efh_format_do(struct _mail_m +@@ -1304,10 +1305,9 @@ static void efh_format_do(struct _mail_m ((EMFormat *)m->format)->pending_uri_level = puri_level; } @@ -3091,7 +3101,7 @@ d(printf("formatting finished\n")); m->format->load_http_now = FALSE; -@@ -1306,10 +1306,9 @@ static void efh_format_done(struct _mail +@@ -1315,10 +1315,9 @@ static void efh_format_done(struct _mail g_signal_emit_by_name(m->format, "complete"); } @@ -3104,7 +3114,7 @@ d(printf("formatter freed\n")); g_object_unref(m->format); if (m->estream) { -@@ -1325,11 +1324,12 @@ static void efh_format_free(struct _mail +@@ -1334,11 +1333,12 @@ static void efh_format_free(struct _mail g_object_unref(m->format_source); } @@ -3122,7 +3132,7 @@ }; static gboolean -@@ -1340,7 +1340,7 @@ efh_format_timeout(struct _format_msg *m +@@ -1349,7 +1349,7 @@ efh_format_timeout(struct _format_msg *m struct _EMFormatHTMLPrivate *p = efh->priv; if (m->format->html == NULL) { @@ -3131,7 +3141,7 @@ return FALSE; } -@@ -1368,7 +1368,7 @@ efh_format_timeout(struct _format_msg *m +@@ -1377,7 +1377,7 @@ efh_format_timeout(struct _format_msg *m if (m->message == NULL) { hstream = gtk_html_begin(efh->html); gtk_html_stream_close(hstream, GTK_HTML_STREAM_OK); @@ -3140,7 +3150,7 @@ p->last_part = NULL; } else { hstream = gtk_html_begin(efh->html); -@@ -1392,8 +1392,8 @@ efh_format_timeout(struct _format_msg *m +@@ -1401,8 +1401,8 @@ efh_format_timeout(struct _format_msg *m p->last_part = m->message; } @@ -3151,7 +3161,7 @@ } efh->priv->format_timeout_id = 0; -@@ -1417,11 +1417,11 @@ static void efh_format_clone(EMFormat *e +@@ -1426,11 +1426,11 @@ static void efh_format_clone(EMFormat *e d(printf(" timeout for last still active, removing ...\n")); g_source_remove(efh->priv->format_timeout_id); efh->priv->format_timeout_id = 0; @@ -3165,8 +3175,9 @@ m->format = (EMFormatHTML *)emf; g_object_ref(emf); m->format_source = emfsource; ---- evolution-2.11.90/mail/em-folder-properties.c.kill-ethread 2007-07-05 02:09:37.000000000 -0400 -+++ evolution-2.11.90/mail/em-folder-properties.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-folder-properties.c.kill-ethread evolution-2.11.91/mail/em-folder-properties.c +--- evolution-2.11.91/mail/em-folder-properties.c.kill-ethread 2007-07-05 02:09:37.000000000 -0400 ++++ evolution-2.11.91/mail/em-folder-properties.c 2007-08-29 17:39:34.000000000 -0400 @@ -386,7 +386,7 @@ em_folder_properties_show(GtkWindow *par } @@ -3176,8 +3187,9 @@ else emfp_dialog_got_folder((char *)uri, folder, NULL); } ---- evolution-2.11.90/mail/em-folder-tree.c.kill-ethread 2007-08-09 02:46:46.000000000 -0400 -+++ evolution-2.11.90/mail/em-folder-tree.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-folder-tree.c.kill-ethread evolution-2.11.91/mail/em-folder-tree.c +--- evolution-2.11.91/mail/em-folder-tree.c.kill-ethread 2007-08-24 02:49:43.000000000 -0400 ++++ evolution-2.11.91/mail/em-folder-tree.c 2007-08-29 17:39:34.000000000 -0400 @@ -835,7 +835,7 @@ fail: /* TODO: Merge the drop handling code/menu's into one spot using a popup target for details */ /* Drop handling */ @@ -3415,9 +3427,10 @@ } static gboolean ---- evolution-2.11.90/mail/em-folder-browser.c.kill-ethread 2007-08-09 02:46:46.000000000 -0400 -+++ evolution-2.11.90/mail/em-folder-browser.c 2007-08-15 13:37:37.000000000 -0400 -@@ -836,7 +836,7 @@ get_view_query (ESearchBar *esb) +diff -up evolution-2.11.91/mail/em-folder-browser.c.kill-ethread evolution-2.11.91/mail/em-folder-browser.c +--- evolution-2.11.91/mail/em-folder-browser.c.kill-ethread 2007-08-27 01:55:18.000000000 -0400 ++++ evolution-2.11.91/mail/em-folder-browser.c 2007-08-29 17:39:34.000000000 -0400 +@@ -851,7 +851,7 @@ get_view_query (ESearchBar *esb) struct _setup_msg { @@ -3426,7 +3439,7 @@ CamelFolder *folder; char *query; -@@ -844,16 +844,15 @@ struct _setup_msg { +@@ -859,16 +859,15 @@ struct _setup_msg { GList *sources_folder; }; @@ -3446,7 +3459,7 @@ GList *l, *list = NULL; CamelFolder *folder; -@@ -864,12 +863,12 @@ vfolder_setup_do(struct _mail_msg *mm) +@@ -879,12 +878,12 @@ vfolder_setup_do(struct _mail_msg *mm) l = m->sources_uri; while (l) { d(printf(" Adding uri: %s\n", (char *)l->data)); @@ -3461,7 +3474,7 @@ } l = l->next; } -@@ -893,17 +892,13 @@ vfolder_setup_do(struct _mail_msg *mm) +@@ -908,17 +907,13 @@ vfolder_setup_do(struct _mail_msg *mm) } static void @@ -3481,7 +3494,7 @@ GList *l; camel_object_unref(m->folder); -@@ -924,11 +919,12 @@ vfolder_setup_free (struct _mail_msg *mm +@@ -939,11 +934,12 @@ vfolder_setup_free (struct _mail_msg *mm g_list_free(m->sources_folder); } @@ -3499,7 +3512,7 @@ }; /* sources_uri should be camel uri's */ -@@ -938,15 +934,15 @@ vfolder_setup(CamelFolder *folder, const +@@ -953,15 +949,15 @@ vfolder_setup(CamelFolder *folder, const struct _setup_msg *m; int id; @@ -3518,8 +3531,9 @@ return id; } ---- evolution-2.11.90/mail/message-list.c.kill-ethread 2007-08-09 02:46:47.000000000 -0400 -+++ evolution-2.11.90/mail/message-list.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/message-list.c.kill-ethread evolution-2.11.91/mail/message-list.c +--- evolution-2.11.91/mail/message-list.c.kill-ethread 2007-08-09 02:46:47.000000000 -0400 ++++ evolution-2.11.91/mail/message-list.c 2007-08-29 17:39:34.000000000 -0400 @@ -1841,7 +1841,7 @@ ml_tree_drag_data_get (ETree *tree, int /* TODO: merge this with the folder tree stuff via empopup targets */ /* Drop handling */ @@ -3796,8 +3810,9 @@ m->ml = ml; m->search = g_strdup (search); m->hideexpr = g_strdup (hideexpr); ---- evolution-2.11.90/mail/em-sync-stream.h.kill-ethread 2007-07-05 02:09:39.000000000 -0400 -+++ evolution-2.11.90/mail/em-sync-stream.h 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-sync-stream.h.kill-ethread evolution-2.11.91/mail/em-sync-stream.h +--- evolution-2.11.91/mail/em-sync-stream.h.kill-ethread 2007-07-05 02:09:39.000000000 -0400 ++++ evolution-2.11.91/mail/em-sync-stream.h 2007-08-29 17:39:34.000000000 -0400 @@ -29,41 +29,45 @@ requests are always handled in the main #ifndef EM_SYNC_STREAM_H #define EM_SYNC_STREAM_H @@ -3874,8 +3889,9 @@ +G_END_DECLS #endif /* EM_SYNC_STREAM_H */ ---- evolution-2.11.90/mail/em-format-html-print.c.kill-ethread 2007-07-08 22:46:50.000000000 -0400 -+++ evolution-2.11.90/mail/em-format-html-print.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-format-html-print.c.kill-ethread evolution-2.11.91/mail/em-format-html-print.c +--- evolution-2.11.91/mail/em-format-html-print.c.kill-ethread 2007-07-08 22:46:50.000000000 -0400 ++++ evolution-2.11.91/mail/em-format-html-print.c 2007-08-29 17:39:34.000000000 -0400 @@ -228,7 +228,7 @@ em_format_html_print_message (EMFormatHT g_object_ref (efhp); @@ -3885,8 +3901,9 @@ } void ---- evolution-2.11.90/mail/em-sync-stream.c.kill-ethread 2007-07-05 02:09:38.000000000 -0400 -+++ evolution-2.11.90/mail/em-sync-stream.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-sync-stream.c.kill-ethread evolution-2.11.91/mail/em-sync-stream.c +--- evolution-2.11.91/mail/em-sync-stream.c.kill-ethread 2007-07-05 02:09:38.000000000 -0400 ++++ evolution-2.11.91/mail/em-sync-stream.c 2007-08-29 17:39:34.000000000 -0400 @@ -25,42 +25,17 @@ #include #endif @@ -4109,7 +4126,7 @@ static void -sync_op(EMSyncStream *emss, enum _write_msg_t op, const char *data, size_t n) +emss_sync_op (EMSyncStream *emss, enum _write_msg_t op, -+ const gchar *string, gsize len) ++ const gchar *string, gsize len) { - struct _EMSyncStreamPrivate *p = emss->priv; struct _write_msg msg; @@ -4312,8 +4329,9 @@ + g_string_free (emss->buffer, TRUE); + emss->buffer = g_string_sized_new (size); } ---- evolution-2.11.90/mail/em-subscribe-editor.c.kill-ethread 2007-07-05 02:09:37.000000000 -0400 -+++ evolution-2.11.90/mail/em-subscribe-editor.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-subscribe-editor.c.kill-ethread evolution-2.11.91/mail/em-subscribe-editor.c +--- evolution-2.11.91/mail/em-subscribe-editor.c.kill-ethread 2007-08-24 02:49:43.000000000 -0400 ++++ evolution-2.11.91/mail/em-subscribe-editor.c 2007-08-29 17:39:34.000000000 -0400 @@ -175,7 +175,7 @@ sub_unref(EMSubscribe *sub) /* ** Subscribe folder operation **************************************** */ @@ -4529,8 +4547,9 @@ sub_unref(sub); } ---- evolution-2.11.90/mail/mail-mt.h.kill-ethread 2007-07-05 02:09:38.000000000 -0400 -+++ evolution-2.11.90/mail/mail-mt.h 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-mt.h.kill-ethread evolution-2.11.91/mail/mail-mt.h +--- evolution-2.11.91/mail/mail-mt.h.kill-ethread 2007-07-05 02:09:38.000000000 -0400 ++++ evolution-2.11.91/mail/mail-mt.h 2007-08-29 17:39:34.000000000 -0400 @@ -23,47 +23,64 @@ #ifndef _MAIL_MT #define _MAIL_MT @@ -4642,8 +4661,9 @@ /* A generic proxy event for anything that can be proxied during the life of the mailer (almost nothing) */ /* Note that almost all objects care about the lifecycle of their events, so this cannot be used */ extern MailAsyncEvent *mail_async_event; ---- evolution-2.11.90/mail/mail-ops.h.kill-ethread 2007-07-05 02:09:38.000000000 -0400 -+++ evolution-2.11.90/mail/mail-ops.h 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-ops.h.kill-ethread evolution-2.11.91/mail/mail-ops.h +--- evolution-2.11.91/mail/mail-ops.h.kill-ethread 2007-07-05 02:09:38.000000000 -0400 ++++ evolution-2.11.91/mail/mail-ops.h 2007-08-29 17:39:34.000000000 -0400 @@ -30,13 +30,14 @@ extern "C" { #pragma } #endif /* __cplusplus */ @@ -4684,8 +4704,9 @@ /* and for a store */ int mail_get_store (const char *uri, CamelOperation *op, ---- evolution-2.11.90/mail/em-composer-utils.c.kill-ethread 2007-07-28 15:37:58.000000000 -0400 -+++ evolution-2.11.90/mail/em-composer-utils.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-composer-utils.c.kill-ethread evolution-2.11.91/mail/em-composer-utils.c +--- evolution-2.11.91/mail/em-composer-utils.c.kill-ethread 2007-08-24 02:49:43.000000000 -0400 ++++ evolution-2.11.91/mail/em-composer-utils.c 2007-08-29 17:39:34.000000000 -0400 @@ -553,7 +553,7 @@ em_utils_composer_save_draft_cb (EMsgCom strcmp (account->drafts_folder_uri, default_drafts_folder_uri) != 0) { int id; @@ -4729,8 +4750,9 @@ - mail_get_message (folder, uid, post_reply_to_message, NULL, mail_thread_new); + mail_get_message (folder, uid, post_reply_to_message, NULL, mail_msg_unordered_push); } ---- evolution-2.11.90/mail/mail-folder-cache.c.kill-ethread 2007-08-09 02:46:46.000000000 -0400 -+++ evolution-2.11.90/mail/mail-folder-cache.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-folder-cache.c.kill-ethread evolution-2.11.91/mail/mail-folder-cache.c +--- evolution-2.11.91/mail/mail-folder-cache.c.kill-ethread 2007-08-09 02:46:46.000000000 -0400 ++++ evolution-2.11.91/mail/mail-folder-cache.c 2007-08-29 17:39:34.000000000 -0400 @@ -862,15 +862,14 @@ update_folders(CamelStore *store, CamelF @@ -4816,8 +4838,9 @@ LOCK(info_lock); ---- evolution-2.11.90/mail/em-folder-view.c.kill-ethread 2007-08-09 02:46:46.000000000 -0400 -+++ evolution-2.11.90/mail/em-folder-view.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/em-folder-view.c.kill-ethread evolution-2.11.91/mail/em-folder-view.c +--- evolution-2.11.91/mail/em-folder-view.c.kill-ethread 2007-08-27 01:55:18.000000000 -0400 ++++ evolution-2.11.91/mail/em-folder-view.c 2007-08-29 17:39:34.000000000 -0400 @@ -71,6 +71,7 @@ #include @@ -4826,7 +4849,7 @@ #include "menus/gal-view-etable.h" #include "menus/gal-view-factory-etable.h" -@@ -701,7 +702,7 @@ emfv_got_folder(char *uri, CamelFolder * +@@ -777,7 +778,7 @@ emfv_got_folder(char *uri, CamelFolder * static void emfv_set_folder_uri(EMFolderView *emfv, const char *uri) { @@ -4835,7 +4858,7 @@ } static void -@@ -1676,7 +1677,7 @@ filter_type_uid (CamelFolder *folder, co +@@ -1752,7 +1753,7 @@ filter_type_uid (CamelFolder *folder, co data->type = type; data->source = source; @@ -4844,7 +4867,7 @@ } static void -@@ -1774,7 +1775,7 @@ vfolder_type_uid (CamelFolder *folder, c +@@ -1850,7 +1851,7 @@ vfolder_type_uid (CamelFolder *folder, c data->type = type; data->uri = g_strdup (uri); @@ -4853,7 +4876,7 @@ } static void -@@ -2419,7 +2420,7 @@ emfv_message_selected_timeout(void *data +@@ -2418,7 +2419,7 @@ emfv_message_selected_timeout(void *data emfv->displayed_uid); gtk_html_stream_close(hstream, GTK_HTML_STREAM_OK); */ @@ -4862,8 +4885,9 @@ } else { e_profile_event_emit("goto.empty", "", 0); g_free(emfv->priv->selected_uid); ---- evolution-2.11.90/mail/mail-session.c.kill-ethread 2007-07-09 01:14:13.000000000 -0400 -+++ evolution-2.11.90/mail/mail-session.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-session.c.kill-ethread evolution-2.11.91/mail/mail-session.c +--- evolution-2.11.91/mail/mail-session.c.kill-ethread 2007-08-27 01:55:18.000000000 -0400 ++++ evolution-2.11.91/mail/mail-session.c 2007-08-29 17:39:34.000000000 -0400 @@ -35,7 +35,7 @@ #include @@ -4873,7 +4897,7 @@ #include /* FIXME: this is where camel_init is defined, it shouldn't include everything else */ #include -@@ -264,21 +264,22 @@ forget_password (CamelSession *session, +@@ -264,148 +264,145 @@ forget_password (CamelSession *session, /* ********************************************************************** */ @@ -4900,13 +4924,15 @@ /* clicked, send back the reply */ static void -@@ -286,122 +287,116 @@ user_message_response (GtkDialog *dialog + user_message_response (GtkDialog *dialog, int button, struct _user_message_msg *m) { gtk_widget_destroy ((GtkWidget *) dialog); - +- - message_dialog = NULL; +- ++ + user_message_dialog = NULL; - ++ /* if !allow_cancel, then we've already replied */ if (m->allow_cancel) { m->result = button == GTK_RESPONSE_OK; @@ -4963,6 +4989,22 @@ - break; - default: - type = 0; +- } +- +- if (m->allow_cancel) +- type += 3; +- +- message_dialog = (GtkDialog *)e_error_new(NULL, error_type[type], m->prompt, NULL); +- g_object_set ((GObject *) message_dialog, "allow_shrink", TRUE, "allow_grow", TRUE, NULL); +- +- /* We only need to wait for the result if we allow cancel otherwise show but send result back instantly */ +- if (m->allow_cancel) { +- if (m->ismain) { +- user_message_response(message_dialog, gtk_dialog_run (message_dialog), m); +- } else { +- g_signal_connect (message_dialog, "response", G_CALLBACK (user_message_response), m); +- gtk_widget_show ((GtkWidget *) message_dialog); +- } + case CAMEL_SESSION_ALERT_INFO: + error_type = m->allow_cancel ? + "mail:session-message-info-cancel" : @@ -4980,36 +5022,27 @@ + break; + default: + g_assert_not_reached (); - } - -- if (m->allow_cancel) -- type += 3; -- -- message_dialog = (GtkDialog *)e_error_new(NULL, error_type[type], m->prompt, NULL); -- g_object_set ((GObject *) message_dialog, "allow_shrink", TRUE, "allow_grow", TRUE, NULL); -+ user_message_dialog = e_error_new(NULL, error_type, m->prompt, NULL); -+ g_object_set (user_message_dialog, "allow_shrink", TRUE, "allow_grow", TRUE, NULL); - - /* We only need to wait for the result if we allow cancel otherwise show but send result back instantly */ - if (m->allow_cancel) { - if (m->ismain) { -- user_message_response(message_dialog, gtk_dialog_run (message_dialog), m); -+ user_message_response(user_message_dialog, gtk_dialog_run (user_message_dialog), m); - } else { -- g_signal_connect (message_dialog, "response", G_CALLBACK (user_message_response), m); -- gtk_widget_show ((GtkWidget *) message_dialog); -+ g_signal_connect (user_message_dialog, "response", G_CALLBACK (user_message_response), m); -+ gtk_widget_show (user_message_dialog); - } ++ } ++ ++ user_message_dialog = e_error_new (NULL, error_type, m->prompt, NULL); ++ g_object_set ( ++ user_message_dialog, "allow_shrink", TRUE, ++ "allow_grow", TRUE, NULL); ++ ++ /* We only need to wait for the result if we allow cancel ++ * otherwise show but send result back instantly */ ++ if (m->allow_cancel && m->ismain) { ++ gint response = gtk_dialog_run (user_message_dialog); ++ user_message_response (user_message_dialog, response, m); } else { - g_signal_connect (message_dialog, "response", G_CALLBACK (gtk_widget_destroy), message_dialog); - g_object_weak_ref ((GObject *) message_dialog, (GWeakNotify) user_message_destroy_notify, m); - gtk_widget_show ((GtkWidget *) message_dialog); - mail_msg_free(m); -+ g_signal_connect (user_message_dialog, "response", G_CALLBACK (gtk_widget_destroy), user_message_dialog); -+ g_object_add_weak_pointer (user_message_dialog, &user_message_dialog); ++ g_signal_connect ( ++ user_message_dialog, "response", ++ G_CALLBACK (user_message_response), m); + gtk_widget_show (user_message_dialog); -+ mail_msg_unref(m); } } @@ -5038,8 +5071,9 @@ MailSession *mail_session = MAIL_SESSION (session); - struct _user_message_msg *m, *r; - EMsgPort *user_message_reply = NULL; +- gboolean ret; + struct _user_message_msg *m; - gboolean ret; ++ gboolean result = TRUE; if (!mail_session->interactive) return FALSE; @@ -5049,38 +5083,51 @@ - m = mail_msg_new (&user_message_op, user_message_reply, sizeof (*m)); - m->ismain = pthread_equal(pthread_self(), mail_gui_thread); + m = mail_msg_new (&user_message_info); -+ m->ismain = mail_in_main_thread(); ++ m->ismain = mail_in_main_thread (); m->type = type; - m->prompt = g_strdup(prompt); +- m->prompt = g_strdup(prompt); ++ m->prompt = g_strdup (prompt); + m->done = e_flag_new (); m->allow_cancel = cancel; +- if (m->ismain) +- do_user_message((struct _mail_msg *)m); +- else { +- extern EMsgPort *mail_gui_port2; + if (cancel) + mail_msg_ref (m); -+ - if (m->ismain) -- do_user_message((struct _mail_msg *)m); -+ user_message_exec(m); - else { -- extern EMsgPort *mail_gui_port2; -- + - e_msgport_put(mail_gui_port2, (EMsg *)m); -+ mail_msg_main_loop_push(mail_msg_ref (m)); - } +- } ++ if (m->ismain) ++ user_message_exec (m); ++ else ++ mail_msg_main_loop_push (m); if (cancel) { - r = (struct _user_message_msg *)e_msgport_wait(user_message_reply); - g_assert(m == r); -- + e_flag_wait (m->done); - ret = m->result; ++ result = m->result; ++ mail_msg_unref (m); ++ } + +- ret = m->result; - mail_msg_free(m); - e_msgport_destroy(user_message_reply); -+ mail_msg_unref(m); - } else - ret = TRUE; +- } else +- ret = TRUE; ++ if (m->ismain) { ++ user_message_free (m); ++ mail_msg_unref (m); ++ } -@@ -541,7 +536,7 @@ get_filter_driver (CamelSession *session +- return ret; ++ return result; + } + + static CamelFolder * +@@ -541,7 +538,7 @@ get_filter_driver (CamelSession *session /* TODO: This is very temporary, until we have a better way to do the progress reporting, we just borrow a dummy mail-mt thread message and hook it onto out camel thread message */ @@ -5089,7 +5136,7 @@ static void *ms_thread_msg_new(CamelSession *session, CamelSessionThreadOps *ops, unsigned int size) { -@@ -550,7 +545,7 @@ static void *ms_thread_msg_new(CamelSess +@@ -550,7 +547,7 @@ static void *ms_thread_msg_new(CamelSess /* We create a dummy mail_msg, and then copy its cancellation port over to ours, so we get cancellation and progress in common with hte existing mail code, for free */ if (msg) { @@ -5098,7 +5145,7 @@ msg->data = m; camel_operation_unref(msg->op); -@@ -563,7 +558,7 @@ static void *ms_thread_msg_new(CamelSess +@@ -563,7 +560,7 @@ static void *ms_thread_msg_new(CamelSess static void ms_thread_msg_free(CamelSession *session, CamelSessionThreadMsg *m) { @@ -5107,7 +5154,7 @@ ms_parent_class->thread_msg_free(session, m); } -@@ -686,22 +681,23 @@ mail_session_set_interactive (gboolean i +@@ -686,22 +683,23 @@ mail_session_set_interactive (gboolean i MAIL_SESSION (session)->interactive = interactive; if (!interactive) { @@ -5137,8 +5184,9 @@ } } } ---- evolution-2.11.90/mail/mail-mt.c.kill-ethread 2007-07-05 02:09:38.000000000 -0400 -+++ evolution-2.11.90/mail/mail-mt.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/mail/mail-mt.c.kill-ethread evolution-2.11.91/mail/mail-mt.c +--- evolution-2.11.91/mail/mail-mt.c.kill-ethread 2007-07-05 02:09:38.000000000 -0400 ++++ evolution-2.11.91/mail/mail-mt.c 2007-08-29 17:39:34.000000000 -0400 @@ -29,8 +29,8 @@ #include #include @@ -6218,8 +6266,9 @@ } /* ******************** */ ---- evolution-2.11.90/plugins/folder-unsubscribe/folder-unsubscribe.c.kill-ethread 2007-07-05 02:09:19.000000000 -0400 -+++ evolution-2.11.90/plugins/folder-unsubscribe/folder-unsubscribe.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/plugins/folder-unsubscribe/folder-unsubscribe.c.kill-ethread evolution-2.11.91/plugins/folder-unsubscribe/folder-unsubscribe.c +--- evolution-2.11.91/plugins/folder-unsubscribe/folder-unsubscribe.c.kill-ethread 2007-07-05 02:09:19.000000000 -0400 ++++ evolution-2.11.91/plugins/folder-unsubscribe/folder-unsubscribe.c 2007-08-29 17:39:34.000000000 -0400 @@ -44,32 +44,30 @@ void org_gnome_mail_folder_unsubscribe ( @@ -6299,8 +6348,9 @@ - e_thread_put (mail_thread_new, (EMsg *) unsub); + mail_msg_unordered_push (unsub); } ---- evolution-2.11.90/plugins/mark-all-read/mark-all-read.c.kill-ethread 2007-07-05 02:09:23.000000000 -0400 -+++ evolution-2.11.90/plugins/mark-all-read/mark-all-read.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/plugins/mark-all-read/mark-all-read.c.kill-ethread evolution-2.11.91/plugins/mark-all-read/mark-all-read.c +--- evolution-2.11.91/plugins/mark-all-read/mark-all-read.c.kill-ethread 2007-07-05 02:09:23.000000000 -0400 ++++ evolution-2.11.91/plugins/mark-all-read/mark-all-read.c 2007-08-29 17:39:34.000000000 -0400 @@ -44,7 +44,7 @@ org_gnome_mark_all_read (EPlugin *ep, EM return; } @@ -6310,19 +6360,21 @@ } static void ---- evolution-2.11.90/plugins/exchange-operations/exchange-folder.c.kill-ethread 2007-07-05 02:09:22.000000000 -0400 -+++ evolution-2.11.90/plugins/exchange-operations/exchange-folder.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/plugins/exchange-operations/exchange-folder.c.kill-ethread evolution-2.11.91/plugins/exchange-operations/exchange-folder.c +--- evolution-2.11.91/plugins/exchange-operations/exchange-folder.c.kill-ethread 2007-07-05 02:09:22.000000000 -0400 ++++ evolution-2.11.91/plugins/exchange-operations/exchange-folder.c 2007-08-29 17:39:34.000000000 -0400 @@ -140,7 +140,7 @@ org_gnome_exchange_folder_inbox_unsubscr inbox_physical_uri = e_folder_get_physical_uri (inbox); /* To get the CamelStore/Folder */ - mail_get_folder (inbox_physical_uri, 0, exchange_get_folder, target_uri, mail_thread_new); -+ mail_get_folder (inbox_physical_uri, 0, exchange_get_folder, target_uri, mail_msg_unordered_push); ++ mail_get_folder (inbox_physical_uri, 0, exchange_get_folder, target_uri, mail_msg_unordered_push); } ---- evolution-2.11.90/plugins/save-attachments/save-attachments.c.kill-ethread 2007-07-05 02:09:25.000000000 -0400 -+++ evolution-2.11.90/plugins/save-attachments/save-attachments.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/plugins/save-attachments/save-attachments.c.kill-ethread evolution-2.11.91/plugins/save-attachments/save-attachments.c +--- evolution-2.11.91/plugins/save-attachments/save-attachments.c.kill-ethread 2007-07-05 02:09:25.000000000 -0400 ++++ evolution-2.11.91/plugins/save-attachments/save-attachments.c 2007-08-29 17:39:34.000000000 -0400 @@ -403,5 +403,5 @@ org_gnome_save_attachments_save(EPlugin camel_object_ref(data->folder); data->uid = g_strdup(target->uids->pdata[0]); @@ -6330,19 +6382,21 @@ - mail_get_message(data->folder, data->uid, save_got_message, data, mail_thread_new); + mail_get_message(data->folder, data->uid, save_got_message, data, mail_msg_unordered_push); } ---- evolution-2.11.90/plugins/mailing-list-actions/mailing-list-actions.c.kill-ethread 2007-07-05 02:09:24.000000000 -0400 -+++ evolution-2.11.90/plugins/mailing-list-actions/mailing-list-actions.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/plugins/mailing-list-actions/mailing-list-actions.c.kill-ethread evolution-2.11.91/plugins/mailing-list-actions/mailing-list-actions.c +--- evolution-2.11.91/plugins/mailing-list-actions/mailing-list-actions.c.kill-ethread 2007-07-05 02:09:24.000000000 -0400 ++++ evolution-2.11.91/plugins/mailing-list-actions/mailing-list-actions.c 2007-08-29 17:39:34.000000000 -0400 @@ -89,7 +89,7 @@ void emla_list_action (EPlugin *item, EM data->uri = strdup (sel->uri); mail_get_message (sel->folder, (const char*) g_ptr_array_index (sel->uids, 0), - emla_list_action_do, data, mail_thread_new); -+ emla_list_action_do, data, mail_msg_unordered_push); ++ emla_list_action_do, data, mail_msg_unordered_push); } void emla_list_action_do (CamelFolder *folder, const char *uid, CamelMimeMessage *msg, void *data) ---- evolution-2.11.90/plugins/groupwise-features/share-folder-common.c.kill-ethread 2007-07-05 02:09:21.000000000 -0400 -+++ evolution-2.11.90/plugins/groupwise-features/share-folder-common.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/plugins/groupwise-features/share-folder-common.c.kill-ethread evolution-2.11.91/plugins/groupwise-features/share-folder-common.c +--- evolution-2.11.91/plugins/groupwise-features/share-folder-common.c.kill-ethread 2007-07-05 02:09:21.000000000 -0400 ++++ evolution-2.11.91/plugins/groupwise-features/share-folder-common.c 2007-08-29 17:39:34.000000000 -0400 @@ -121,7 +121,7 @@ shared_folder_abort (EPlugin *ep, EConfi } @@ -6440,8 +6494,9 @@ return id; } ---- evolution-2.11.90/calendar/gui/alarm-notify/alarm-notify.h.kill-ethread 2007-07-05 02:11:11.000000000 -0400 -+++ evolution-2.11.90/calendar/gui/alarm-notify/alarm-notify.h 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.h.kill-ethread evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.h +--- evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.h.kill-ethread 2007-07-05 02:11:11.000000000 -0400 ++++ evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.h 2007-08-29 17:39:34.000000000 -0400 @@ -39,19 +39,6 @@ typedef struct _AlarmNotifyClass AlarmNo typedef struct _AlarmNotifyPrivate AlarmNotifyPrivate; @@ -6462,8 +6517,9 @@ struct _AlarmNotify { BonoboObject object; ---- evolution-2.11.90/calendar/gui/alarm-notify/alarm-notify.c.kill-ethread 2007-08-13 00:00:08.000000000 -0400 -+++ evolution-2.11.90/calendar/gui/alarm-notify/alarm-notify.c 2007-08-15 13:37:37.000000000 -0400 +diff -up evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.c.kill-ethread evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.c +--- evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.c.kill-ethread 2007-08-13 00:00:08.000000000 -0400 ++++ evolution-2.11.91/calendar/gui/alarm-notify/alarm-notify.c 2007-08-29 17:39:34.000000000 -0400 @@ -45,10 +45,6 @@ struct _AlarmNotifyPrivate { GMutex *mutex; }; @@ -6576,8 +6632,9 @@ } static void ---- evolution-2.11.90/calendar/gui/alarm-notify/alarm-queue.c.kill-ethread 2007-08-13 00:00:08.000000000 -0400 -+++ evolution-2.11.90/calendar/gui/alarm-notify/alarm-queue.c 2007-08-15 13:41:19.000000000 -0400 +diff -up evolution-2.11.91/calendar/gui/alarm-notify/alarm-queue.c.kill-ethread evolution-2.11.91/calendar/gui/alarm-notify/alarm-queue.c +--- evolution-2.11.91/calendar/gui/alarm-notify/alarm-queue.c.kill-ethread 2007-08-13 00:00:08.000000000 -0400 ++++ evolution-2.11.91/calendar/gui/alarm-notify/alarm-queue.c 2007-08-29 17:39:34.000000000 -0400 @@ -97,9 +97,6 @@ static int tray_blink_id = -1; static int tray_blink_state = FALSE; static AlarmNotify *an; @@ -6671,16 +6728,16 @@ - /* These two structures will be freed by the msg destroy function*/ - msg = malloc (sizeof (AlarmMsg)); - msg->receive_msg = midnight_refresh_async; +- +- list = malloc (sizeof (struct _midnight_refresh_msg)); + struct _midnight_refresh_msg *msg; -- list = malloc (sizeof (struct _midnight_refresh_msg)); +- list->remove = TRUE; +- msg->data = list; + msg = g_slice_new (struct _midnight_refresh_msg); + msg->header.func = (MessageFunc) midnight_refresh_async; + msg->remove = TRUE; -- list->remove = TRUE; -- msg->data = list; -- - d(printf("%s:%d (midnight_refresh_cb) - Invoking task for midnight refresh\n",__FILE__, __LINE__)); - e_thread_put(alarm_operation_thread, (EMsg *)msg); + message_push ((Message *) msg); @@ -6734,7 +6791,8 @@ { - AlarmMsg *msg; - struct _query_msg *list; -- ++ struct _query_msg *msg; + - /* These two structures will be freed by the msg destroy function*/ - msg = malloc (sizeof (AlarmMsg)); - msg->receive_msg = query_objects_changed_async; @@ -6743,8 +6801,7 @@ - list->objects = duplicate_ical (objects); - list->data = data; - msg->data = list; -+ struct _query_msg *msg; - +- - d(printf("%s:%d (query_objects_changed_cb) - Posting a task\n",__FILE__, __LINE__)); - e_thread_put(alarm_operation_thread, (EMsg *)msg); + msg = g_slice_new (struct _query_msg); @@ -6941,16 +6998,16 @@ +tray_list_remove_icons (void) { - AlarmMsg *msg; -+ Message *msg; - +- - /* These two structures will be freed by the msg destroy function*/ - msg = malloc (sizeof (AlarmMsg)); - msg->receive_msg = tray_list_remove_async; ++ Message *msg; + +- msg->data = NULL; + msg = g_slice_new (Message); + msg->func = tray_list_remove_async; -- msg->data = NULL; -- - d(printf("%s:%d (tray_list_remove_icons) - Posting a task\n",__FILE__, __LINE__)); - e_thread_put(alarm_operation_thread, (EMsg *)msg); + message_push (msg); @@ -6991,13 +7048,13 @@ - list->data = data; - msg->data = list; + struct _tray_msg *msg; - -- d(printf("%s:%d (tray_list_remove_data) - Posting a task\n",__FILE__, __LINE__)); -- e_thread_put(alarm_operation_thread, (EMsg *)msg); ++ + msg = g_slice_new (struct _tray_msg); + msg->header.func = (MessageFunc) tray_list_remove_data_async; + msg->data = data; -+ + +- d(printf("%s:%d (tray_list_remove_data) - Posting a task\n",__FILE__, __LINE__)); +- e_thread_put(alarm_operation_thread, (EMsg *)msg); + message_push ((Message *) msg); } @@ -7143,17 +7200,17 @@ g_hash_table_remove (client_alarms_hash, client); + -+ g_slice_free (struct _alarm_client_msg, msg); ++ g_slice_free (struct _alarm_client_msg, msg); } /** alarm_queue_remove_client -@@ -2156,22 +2142,13 @@ alarm_queue_remove_async (EThread *e, Al +@@ -2156,22 +2142,16 @@ alarm_queue_remove_async (EThread *e, Al void alarm_queue_remove_client (ECal *client, gboolean immediately) { - AlarmMsg *msg; - struct _alarm_client_msg *list; -+ struct _alarm_client_msg *msg; ++ struct _alarm_client_msg *msg; - /* These two structures will be freed by the msg destroy function*/ - msg = malloc (sizeof (AlarmMsg)); @@ -7162,17 +7219,17 @@ - list = malloc (sizeof (struct _alarm_client_msg)); - list->client = client; - msg->data = list; -- ++ msg = g_slice_new (struct _alarm_client_msg); ++ msg->header.func = (MessageFunc) alarm_queue_remove_async; ++ msg->client = client; + - d(printf("%s:%d (alarm_queue_remove_client) - Posting a task\n",__FILE__, __LINE__)); -- if (immediately) + if (immediately) - alarm_queue_remove_async (NULL, msg, NULL); -- else ++ alarm_queue_remove_async (msg); + else - e_thread_put(alarm_operation_thread, (EMsg *)msg); -+ msg = g_slice_new (struct _alarm_client_msg); -+ msg->header.func = (MessageFunc) alarm_queue_remove_async; -+ msg->client = client; -+ -+ message_push ((Message *) msg); ++ message_push ((Message *) msg); } /* Update non-time related variables for various structures on modification of an existing component diff --git a/evolution.spec b/evolution.spec index 1d1c838..6090912 100644 --- a/evolution.spec +++ b/evolution.spec @@ -45,7 +45,7 @@ Name: evolution Version: 2.11.91 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2 and GFDL+ Group: Applications/Productivity Summary: GNOME's next-generation groupware suite @@ -698,6 +698,10 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/evolution/%{evo_major}/libmenus.so %changelog +* Wed Aug 29 2007 Matthew Barnes - 2.11.91-3.fc8 +- Revise patch for GNOME bug #362638 to fix GNOME bug #357175 + (Evolution fails to close after IMAP alert has been displayed). + * Tue Aug 28 2007 Matthew Barnes - 2.11.91-2.fc8 - Fix compilation breakage caused by our strict build settings.