From 853aac777201e0ce03687608cb11a8e1b6a2c6b4 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Wed, 11 Apr 2007 03:11:35 +0000 Subject: [PATCH] - Revise patch for GNOME bug #362638 to fix RH bug #235096 (crash when displaying a mail server message to user). --- evolution-2.8.1-kill-ethread.patch | 248 ++++++++++++++++++++--------- evolution.spec | 6 +- 2 files changed, 176 insertions(+), 78 deletions(-) diff --git a/evolution-2.8.1-kill-ethread.patch b/evolution-2.8.1-kill-ethread.patch index 1d49a68..00e4630 100644 --- a/evolution-2.8.1-kill-ethread.patch +++ b/evolution-2.8.1-kill-ethread.patch @@ -1,5 +1,5 @@ ---- evolution-2.10.0/mail/mail-send-recv.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/mail-send-recv.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-send-recv.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-send-recv.c 2007-04-10 22:37:49.000000000 -0400 @@ -819,7 +819,7 @@ m->folders = folders; m->info = sinfo; @@ -9,8 +9,8 @@ } else { receive_done ("", data); } ---- evolution-2.10.0/mail/mail-component.c.kill-ethread 2007-03-12 16:13:58.000000000 -0400 -+++ evolution-2.10.0/mail/mail-component.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-component.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-component.c 2007-04-10 22:37:49.000000000 -0400 @@ -965,7 +965,7 @@ if (camel_url_get_param(url, "uid") != NULL) { char *curi = em_uri_to_camel(uri); @@ -20,8 +20,8 @@ g_free(curi); } else { g_warning("email uri's must include a uid parameter"); ---- evolution-2.10.0/mail/mail-ops.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/mail-ops.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-ops.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-ops.c 2007-04-10 22:37:49.000000000 -0400 @@ -221,7 +221,7 @@ camel_filter_driver_remove_rule_by_name (m->driver, "new-mail-notification"); } @@ -247,8 +247,8 @@ return id; } ---- evolution-2.10.0/mail/em-folder-utils.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/em-folder-utils.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-folder-utils.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-folder-utils.c 2007-04-10 22:37:49.000000000 -0400 @@ -260,7 +260,7 @@ m->delete = delete; seq = m->msg.seq; @@ -267,8 +267,8 @@ return id; } ---- evolution-2.10.0/mail/importers/elm-importer.c.kill-ethread 2007-01-03 10:34:11.000000000 -0500 -+++ evolution-2.10.0/mail/importers/elm-importer.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/importers/elm-importer.c.kill-ethread 2007-04-09 09:09:26.000000000 -0400 ++++ evolution-2.10.1/mail/importers/elm-importer.c 2007-04-10 22:37:49.000000000 -0400 @@ -312,7 +312,7 @@ id = m->msg.seq; @@ -278,8 +278,8 @@ return id; } ---- evolution-2.10.0/mail/importers/mail-importer.c.kill-ethread 2007-01-03 10:34:11.000000000 -0500 -+++ evolution-2.10.0/mail/importers/mail-importer.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/importers/mail-importer.c.kill-ethread 2007-04-09 09:09:26.000000000 -0400 ++++ evolution-2.10.1/mail/importers/mail-importer.c 2007-04-10 22:37:49.000000000 -0400 @@ -329,7 +329,7 @@ } @@ -289,8 +289,8 @@ return id; } ---- evolution-2.10.0/mail/importers/pine-importer.c.kill-ethread 2007-01-03 10:34:11.000000000 -0500 -+++ evolution-2.10.0/mail/importers/pine-importer.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/importers/pine-importer.c.kill-ethread 2007-04-09 09:09:26.000000000 -0400 ++++ evolution-2.10.1/mail/importers/pine-importer.c 2007-04-10 22:37:49.000000000 -0400 @@ -350,7 +350,7 @@ id = m->msg.seq; @@ -300,8 +300,8 @@ return id; } ---- evolution-2.10.0/mail/mail-vfolder.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/mail-vfolder.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-vfolder.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-vfolder.c 2007-04-10 22:37:49.000000000 -0400 @@ -188,7 +188,7 @@ m->sources_folder = sources_folder; @@ -347,8 +347,8 @@ from = em_uri_from_camel(cfrom); to = em_uri_from_camel(cto); ---- evolution-2.10.0/mail/em-format-html.c.kill-ethread 2007-02-26 04:59:59.000000000 -0500 -+++ evolution-2.10.0/mail/em-format-html.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-format-html.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-format-html.c 2007-04-10 22:37:49.000000000 -0400 @@ -1375,7 +1375,7 @@ } @@ -358,9 +358,9 @@ } efh->priv->format_timeout_id = 0; ---- evolution-2.10.0/mail/em-folder-properties.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/em-folder-properties.c 2007-03-30 15:47:31.000000000 -0400 -@@ -379,7 +379,7 @@ +--- evolution-2.10.1/mail/em-folder-properties.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-folder-properties.c 2007-04-10 22:37:49.000000000 -0400 +@@ -386,7 +386,7 @@ } if (folder == NULL) @@ -369,9 +369,9 @@ else emfp_dialog_got_folder((char *)uri, folder, NULL); } ---- evolution-2.10.0/mail/em-folder-tree.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/em-folder-tree.c 2007-03-30 15:47:31.000000000 -0400 -@@ -966,7 +966,7 @@ +--- evolution-2.10.1/mail/em-folder-tree.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-folder-tree.c 2007-04-10 22:37:49.000000000 -0400 +@@ -969,7 +969,7 @@ tree_drag_data_action(struct _DragDataReceivedAsync *m) { m->move = m->action == GDK_ACTION_MOVE; @@ -380,7 +380,7 @@ } static void -@@ -1891,7 +1891,7 @@ +@@ -1915,7 +1915,7 @@ m->top = full_name; m->flags = CAMEL_STORE_FOLDER_INFO_RECURSIVE|CAMEL_STORE_FOLDER_INFO_FAST; @@ -389,8 +389,8 @@ } static gboolean ---- evolution-2.10.0/mail/em-folder-browser.c.kill-ethread 2007-02-26 04:59:59.000000000 -0500 -+++ evolution-2.10.0/mail/em-folder-browser.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-folder-browser.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-folder-browser.c 2007-04-10 22:37:49.000000000 -0400 @@ -948,7 +948,7 @@ m->sources_folder = sources_folder; @@ -400,9 +400,9 @@ return id; } ---- evolution-2.10.0/mail/message-list.c.kill-ethread 2007-01-23 03:23:43.000000000 -0500 -+++ evolution-2.10.0/mail/message-list.c 2007-03-30 15:47:31.000000000 -0400 -@@ -1888,7 +1888,7 @@ +--- evolution-2.10.1/mail/message-list.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/message-list.c 2007-04-10 22:37:49.000000000 -0400 +@@ -1889,7 +1889,7 @@ ml_drop_action(struct _drop_msg *m) { m->move = m->action == GDK_ACTION_MOVE; @@ -411,7 +411,7 @@ } static void -@@ -3922,7 +3922,7 @@ +@@ -3978,7 +3978,7 @@ m->ml->regen = g_list_prepend(m->ml->regen, m); /* TODO: we should manage our own thread stuff, would make cancelling outstanding stuff easier */ @@ -420,8 +420,8 @@ m->ml->regen_timeout_msg = NULL; m->ml->regen_timeout_id = 0; ---- evolution-2.10.0/mail/em-sync-stream.h.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/em-sync-stream.h 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-sync-stream.h.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-sync-stream.h 2007-04-10 22:37:49.000000000 -0400 @@ -29,41 +29,45 @@ #ifndef EM_SYNC_STREAM_H #define EM_SYNC_STREAM_H @@ -498,8 +498,8 @@ +G_END_DECLS #endif /* EM_SYNC_STREAM_H */ ---- evolution-2.10.0/mail/em-format-html-print.c.kill-ethread 2007-02-26 04:59:59.000000000 -0500 -+++ evolution-2.10.0/mail/em-format-html-print.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-format-html-print.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-format-html-print.c 2007-04-10 22:37:49.000000000 -0400 @@ -262,7 +262,7 @@ g_object_ref(source); g_object_ref(efhp); @@ -509,8 +509,8 @@ return 0; /* damn async ... */ } ---- evolution-2.10.0/mail/em-sync-stream.c.kill-ethread 2007-02-26 04:59:59.000000000 -0500 -+++ evolution-2.10.0/mail/em-sync-stream.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-sync-stream.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-sync-stream.c 2007-04-10 22:37:49.000000000 -0400 @@ -25,42 +25,17 @@ #include #endif @@ -936,8 +936,8 @@ + g_string_free (emss->buffer, TRUE); + emss->buffer = g_string_sized_new (size); } ---- evolution-2.10.0/mail/em-subscribe-editor.c.kill-ethread 2007-01-08 11:54:43.000000000 -0500 -+++ evolution-2.10.0/mail/em-subscribe-editor.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-subscribe-editor.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-subscribe-editor.c 2007-04-10 22:37:49.000000000 -0400 @@ -229,7 +229,7 @@ next = (struct _zsubscribe_msg *)e_dlist_remhead(&m->sub->subscribe); if (next) { @@ -965,8 +965,8 @@ return id; } ---- evolution-2.10.0/mail/mail-mt.h.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/mail-mt.h 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-mt.h.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-mt.h 2007-04-10 22:37:49.000000000 -0400 @@ -25,14 +25,15 @@ #include @@ -1037,8 +1037,8 @@ /* 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.10.0/mail/mail-ops.h.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/mail-ops.h 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-ops.h.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-ops.h 2007-04-10 22:37:49.000000000 -0400 @@ -30,13 +30,14 @@ #pragma } #endif /* __cplusplus */ @@ -1079,8 +1079,8 @@ /* and for a store */ int mail_get_store (const char *uri, CamelOperation *op, ---- evolution-2.10.0/mail/em-composer-utils.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/em-composer-utils.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-composer-utils.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-composer-utils.c 2007-04-10 22:37:49.000000000 -0400 @@ -534,7 +534,7 @@ strcmp (account->drafts_folder_uri, default_drafts_folder_uri) != 0) { int id; @@ -1124,8 +1124,8 @@ - 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.10.0/mail/mail-folder-cache.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/mail-folder-cache.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-folder-cache.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-folder-cache.c 2007-04-10 22:37:49.000000000 -0400 @@ -907,7 +907,7 @@ m->store = store; camel_object_ref (store); @@ -1144,8 +1144,8 @@ LOCK(info_lock); ---- evolution-2.10.0/mail/em-folder-view.c.kill-ethread 2007-03-01 01:06:14.000000000 -0500 -+++ evolution-2.10.0/mail/em-folder-view.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/em-folder-view.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/em-folder-view.c 2007-04-10 22:37:49.000000000 -0400 @@ -68,6 +68,7 @@ #include @@ -1190,8 +1190,8 @@ } else { e_profile_event_emit("goto.empty", "", 0); g_free(emfv->priv->selected_uid); ---- evolution-2.10.0/mail/mail-session.c.kill-ethread 2007-02-26 04:59:59.000000000 -0500 -+++ evolution-2.10.0/mail/mail-session.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-session.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-session.c 2007-04-10 22:37:49.000000000 -0400 @@ -35,7 +35,7 @@ #include @@ -1201,6 +1201,15 @@ #include /* FIXME: this is where camel_init is defined, it shouldn't include everything else */ #include +@@ -256,7 +256,7 @@ + + /* ********************************************************************** */ + +-static GtkDialog *message_dialog; ++static gpointer message_dialog; + static EDList message_list = E_DLIST_INITIALISER(message_list); + + struct _user_message_msg { @@ -283,7 +283,7 @@ /* if !allow_cancel, then we've already replied */ if (m->allow_cancel) { @@ -1210,7 +1219,92 @@ } /* check for pendings */ -@@ -364,17 +364,18 @@ +@@ -292,22 +292,10 @@ + } + + static void +-user_message_destroy_notify (struct _user_message_msg *m, GObject *deadbeef) +-{ +- message_dialog = NULL; +-} +- +-/* This is kinda ugly/inefficient, but oh well, it works */ +-static const char *error_type[] = { +- "mail:session-message-info", "mail:session-message-warning", "mail:session-message-error", +- "mail:session-message-info-cancel", "mail:session-message-warning-cancel", "mail:session-message-error-cancel" +-}; +- +-static void + do_user_message (struct _mail_msg *mm) + { + struct _user_message_msg *m = (struct _user_message_msg *)mm; +- int type; ++ const gchar *error_type; + + if (!m->ismain && message_dialog != NULL) { + e_dlist_addtail (&message_list, (EDListNode *)m); +@@ -315,24 +303,27 @@ + } + + switch (m->type) { +- case CAMEL_SESSION_ALERT_INFO: +- type = 0; +- break; +- case CAMEL_SESSION_ALERT_WARNING: +- type = 1; +- break; +- case CAMEL_SESSION_ALERT_ERROR: +- type = 2; +- break; +- default: +- type = 0; ++ case CAMEL_SESSION_ALERT_INFO: ++ error_type = m->allow_cancel ? ++ "mail:session-message-info-cancel" : ++ "mail:session-message-info"; ++ break; ++ case CAMEL_SESSION_ALERT_WARNING: ++ error_type = m->allow_cancel ? ++ "mail:session-message-warning-cancel" : ++ "mail:session-message-warning"; ++ break; ++ case CAMEL_SESSION_ALERT_ERROR: ++ error_type = m->allow_cancel ? ++ "mail:session-message-error-cancel" : ++ "mail:session-message-error"; ++ 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); ++ message_dialog = e_error_new(NULL, error_type, m->prompt, NULL); ++ g_object_set (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) { +@@ -340,12 +331,13 @@ + 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); ++ gtk_widget_show (message_dialog); + } + } 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); ++ g_object_add_weak_pointer (message_dialog, &message_dialog); ++ gtk_widget_show (message_dialog); ++ e_flag_free (mm->processed); + mail_msg_free(m); + } + } +@@ -364,17 +356,17 @@ alert_user(CamelSession *session, CamelSessionAlertType type, const char *prompt, gboolean cancel) { MailSession *mail_session = MAIL_SESSION (session); @@ -1223,18 +1317,18 @@ if (!mail_session->interactive) return FALSE; - if (cancel) +- if (cancel) - user_message_reply = e_msgport_new (); - m = mail_msg_new (&user_message_op, user_message_reply, sizeof (*m)); - m->ismain = pthread_equal(pthread_self(), mail_gui_thread); -+ processed = e_flag_new (); ++ processed = e_flag_new (); + + m = mail_msg_new (&user_message_op, processed, sizeof (*m)); + m->ismain = mail_in_main_thread(); m->type = type; m->prompt = g_strdup(prompt); m->allow_cancel = cancel; -@@ -382,18 +383,14 @@ +@@ -382,18 +374,14 @@ if (m->ismain) do_user_message((struct _mail_msg *)m); else { @@ -1249,14 +1343,14 @@ - g_assert(m == r); - + e_flag_wait (processed); ++ e_flag_free (processed); ret = m->result; mail_msg_free(m); - e_msgport_destroy(user_message_reply); -+ e_flag_free (processed); } else ret = TRUE; -@@ -686,7 +683,7 @@ +@@ -687,7 +675,7 @@ /* flush/cancel pending user messages */ while ((um = (struct _user_message_msg *) e_dlist_remhead (&message_list))) { d(printf ("Flusing message request: %s\n", um->prompt)); @@ -1265,8 +1359,8 @@ } /* and the current */ ---- evolution-2.10.0/mail/mail-mt.c.kill-ethread 2007-01-03 10:34:12.000000000 -0500 -+++ evolution-2.10.0/mail/mail-mt.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/mail/mail-mt.c.kill-ethread 2007-04-09 09:09:27.000000000 -0400 ++++ evolution-2.10.1/mail/mail-mt.c 2007-04-10 22:37:49.000000000 -0400 @@ -29,7 +29,6 @@ #include #include @@ -1811,8 +1905,8 @@ } /* ******************** */ ---- evolution-2.10.0/plugins/folder-unsubscribe/folder-unsubscribe.c.kill-ethread 2007-01-03 10:34:02.000000000 -0500 -+++ evolution-2.10.0/plugins/folder-unsubscribe/folder-unsubscribe.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/plugins/folder-unsubscribe/folder-unsubscribe.c.kill-ethread 2007-04-09 09:09:11.000000000 -0400 ++++ evolution-2.10.1/plugins/folder-unsubscribe/folder-unsubscribe.c 2007-04-10 22:37:49.000000000 -0400 @@ -108,5 +108,5 @@ unsub = mail_msg_new (&unsubscribe_op, NULL, sizeof (struct _folder_unsub_t)); unsub->uri = g_strdup (target->uri); @@ -1820,8 +1914,8 @@ - e_thread_put (mail_thread_new, (EMsg *) unsub); + mail_msg_unordered_push ((mail_msg_t *) unsub); } ---- evolution-2.10.0/plugins/mark-all-read/mark-all-read.c.kill-ethread 2007-01-03 10:34:03.000000000 -0500 -+++ evolution-2.10.0/plugins/mark-all-read/mark-all-read.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/plugins/mark-all-read/mark-all-read.c.kill-ethread 2007-04-09 09:09:14.000000000 -0400 ++++ evolution-2.10.1/plugins/mark-all-read/mark-all-read.c 2007-04-10 22:37:49.000000000 -0400 @@ -44,7 +44,7 @@ return; } @@ -1831,8 +1925,8 @@ } static void ---- evolution-2.10.0/plugins/exchange-operations/exchange-folder.c.kill-ethread 2007-01-03 10:34:03.000000000 -0500 -+++ evolution-2.10.0/plugins/exchange-operations/exchange-folder.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/plugins/exchange-operations/exchange-folder.c.kill-ethread 2007-04-09 09:09:13.000000000 -0400 ++++ evolution-2.10.1/plugins/exchange-operations/exchange-folder.c 2007-04-10 22:37:49.000000000 -0400 @@ -134,7 +134,7 @@ inbox_physical_uri = e_folder_get_physical_uri (inbox); @@ -1842,8 +1936,8 @@ } ---- evolution-2.10.0/plugins/save-attachments/save-attachments.c.kill-ethread 2007-02-26 04:59:58.000000000 -0500 -+++ evolution-2.10.0/plugins/save-attachments/save-attachments.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/plugins/save-attachments/save-attachments.c.kill-ethread 2007-04-09 09:09:15.000000000 -0400 ++++ evolution-2.10.1/plugins/save-attachments/save-attachments.c 2007-04-10 22:37:49.000000000 -0400 @@ -407,5 +407,5 @@ camel_object_ref(data->folder); data->uid = g_strdup(target->uids->pdata[0]); @@ -1851,8 +1945,8 @@ - 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.10.0/plugins/mailing-list-actions/mailing-list-actions.c.kill-ethread 2007-01-03 10:34:04.000000000 -0500 -+++ evolution-2.10.0/plugins/mailing-list-actions/mailing-list-actions.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/plugins/mailing-list-actions/mailing-list-actions.c.kill-ethread 2007-04-09 09:09:14.000000000 -0400 ++++ evolution-2.10.1/plugins/mailing-list-actions/mailing-list-actions.c 2007-04-10 22:37:49.000000000 -0400 @@ -89,7 +89,7 @@ data->uri = strdup (sel->uri); @@ -1862,8 +1956,8 @@ } void emla_list_action_do (CamelFolder *folder, const char *uid, CamelMimeMessage *msg, void *data) ---- evolution-2.10.0/plugins/groupwise-features/share-folder-common.c.kill-ethread 2007-01-03 10:34:02.000000000 -0500 -+++ evolution-2.10.0/plugins/groupwise-features/share-folder-common.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/plugins/groupwise-features/share-folder-common.c.kill-ethread 2007-04-09 09:09:12.000000000 -0400 ++++ evolution-2.10.1/plugins/groupwise-features/share-folder-common.c 2007-04-10 22:37:49.000000000 -0400 @@ -239,7 +239,7 @@ m->done = done; g_free (namebuf); @@ -1873,8 +1967,8 @@ return id; } ---- evolution-2.10.0/calendar/gui/alarm-notify/alarm-notify.h.kill-ethread 2007-01-03 10:34:50.000000000 -0500 -+++ evolution-2.10.0/calendar/gui/alarm-notify/alarm-notify.h 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/calendar/gui/alarm-notify/alarm-notify.h.kill-ethread 2007-04-09 09:10:29.000000000 -0400 ++++ evolution-2.10.1/calendar/gui/alarm-notify/alarm-notify.h 2007-04-10 22:37:49.000000000 -0400 @@ -39,19 +39,6 @@ typedef struct _AlarmNotifyPrivate AlarmNotifyPrivate; @@ -1895,8 +1989,8 @@ struct _AlarmNotify { BonoboObject object; ---- evolution-2.10.0/calendar/gui/alarm-notify/alarm-notify.c.kill-ethread 2007-01-03 10:34:50.000000000 -0500 -+++ evolution-2.10.0/calendar/gui/alarm-notify/alarm-notify.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/calendar/gui/alarm-notify/alarm-notify.c.kill-ethread 2007-04-09 09:10:29.000000000 -0400 ++++ evolution-2.10.1/calendar/gui/alarm-notify/alarm-notify.c 2007-04-10 22:37:49.000000000 -0400 @@ -45,10 +45,6 @@ GMutex *mutex; }; @@ -2009,8 +2103,8 @@ } static void ---- evolution-2.10.0/calendar/gui/alarm-notify/alarm-queue.c.kill-ethread 2007-01-03 10:34:50.000000000 -0500 -+++ evolution-2.10.0/calendar/gui/alarm-notify/alarm-queue.c 2007-03-30 15:47:31.000000000 -0400 +--- evolution-2.10.1/calendar/gui/alarm-notify/alarm-queue.c.kill-ethread 2007-04-09 09:10:29.000000000 -0400 ++++ evolution-2.10.1/calendar/gui/alarm-notify/alarm-queue.c 2007-04-10 22:37:49.000000000 -0400 @@ -115,9 +115,6 @@ static int tray_blink_state = FALSE; static AlarmNotify *an; diff --git a/evolution.spec b/evolution.spec index 194f6e4..849773c 100644 --- a/evolution.spec +++ b/evolution.spec @@ -47,7 +47,7 @@ Name: evolution Version: 2.10.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPL Group: Applications/Productivity Summary: GNOME's next-generation groupware suite @@ -730,6 +730,10 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/evolution/%{evo_major}/libmenus.so %changelog +* Tue Apr 10 2007 Matthew Barnes - 2.10.1-2.fc7 +- Revise patch for GNOME bug #362638 to fix RH bug #235096 + (crash when displaying a mail server message to user). + * Mon Apr 09 2007 Matthew Barnes - 2.10.1-1.fc7 - Update to 2.10.1 - Fix buggy gnome-doc-utils.make (GNOME bug #427939).