[evolution] Bug 706463 - Refcounting error in e_mail_reader_reply_to_message()



commit 25d9c75be36e465d6192166a23308aeaf1a7a243
Author: Matthew Barnes <mbarnes redhat com>
Date:   Fri Aug 23 10:21:00 2013 -0400

    Bug 706463 - Refcounting error in e_mail_reader_reply_to_message()
    
    Highlight a section of a mailing list post, click Reply, answer "Reply
    Privately", Evolution mishandles the source message's reference count,
    causing the message to finalize too early and crash in Camel.

 mail/e-mail-reader-utils.c |   13 ++-----------
 1 files changed, 2 insertions(+), 11 deletions(-)
---
diff --git a/mail/e-mail-reader-utils.c b/mail/e-mail-reader-utils.c
index acd5295..a5c8776 100644
--- a/mail/e-mail-reader-utils.c
+++ b/mail/e-mail-reader-utils.c
@@ -1840,18 +1840,11 @@ e_mail_reader_reply_to_message (EMailReader *reader,
 
        if (src_message == NULL) {
                src_message = e_mail_part_list_get_message (part_list);
-               if (src_message != NULL)
-                       g_object_ref (src_message);
-
-               g_object_unref (part_list);
-               part_list = NULL;
-
                g_return_if_fail (src_message != NULL);
-       } else {
-               g_object_unref (part_list);
-               part_list = NULL;
        }
 
+       g_clear_object (&part_list);
+
        if (!e_web_view_is_selection_active (web_view))
                goto whole_message;
 
@@ -1884,8 +1877,6 @@ e_mail_reader_reply_to_message (EMailReader *reader,
                CAMEL_MIME_PART (new_message),
                selection, length, "text/html");
 
-       g_object_unref (src_message);
-
        composer = em_utils_reply_to_message (
                shell, new_message, folder, uid,
                reply_type, reply_style, NULL, address);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]