diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/calendar/e-cal-attachment-handler.c | 4 | ||||
-rw-r--r-- | modules/mail/e-mail-attachment-handler.c | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/modules/calendar/e-cal-attachment-handler.c b/modules/calendar/e-cal-attachment-handler.c index 343d4bad14..8613fbf169 100644 --- a/modules/calendar/e-cal-attachment-handler.c +++ b/modules/calendar/e-cal-attachment-handler.c @@ -79,7 +79,7 @@ attachment_handler_get_component (EAttachment *attachment) e_attachment_get_saving (attachment)) return NULL; - mime_part = e_attachment_get_mime_part (attachment); + mime_part = e_attachment_ref_mime_part (attachment); if (mime_part == NULL) return NULL; @@ -90,6 +90,8 @@ attachment_handler_get_component (EAttachment *attachment) camel_data_wrapper_decode_to_stream_sync (wrapper, stream, NULL, NULL); g_object_unref (stream); + g_object_unref (mime_part); + if (buffer->len > 0) { const gchar *str; diff --git a/modules/mail/e-mail-attachment-handler.c b/modules/mail/e-mail-attachment-handler.c index d041bc9ad1..5e328c4aab 100644 --- a/modules/mail/e-mail-attachment-handler.c +++ b/modules/mail/e-mail-attachment-handler.c @@ -79,7 +79,7 @@ mail_attachment_handler_get_selected_message (EAttachmentHandler *handler) g_return_val_if_fail (g_list_length (selected) == 1, NULL); attachment = E_ATTACHMENT (selected->data); - mime_part = e_attachment_get_mime_part (attachment); + mime_part = e_attachment_ref_mime_part (attachment); outer_wrapper = camel_medium_get_content (CAMEL_MEDIUM (mime_part)); @@ -128,6 +128,8 @@ exit: if (message == NULL) message = g_object_ref (outer_wrapper); + g_clear_object (&mime_part); + g_list_free_full (selected, (GDestroyNotify) g_object_unref); return message; @@ -477,7 +479,7 @@ mail_attachment_handler_update_actions (EAttachmentView *view, e_attachment_get_saving (attachment)) goto exit; - mime_part = e_attachment_get_mime_part (attachment); + mime_part = e_attachment_ref_mime_part (attachment); if (mime_part != NULL) { CamelMedium *medium; @@ -486,6 +488,8 @@ mail_attachment_handler_update_actions (EAttachmentView *view, medium = CAMEL_MEDIUM (mime_part); content = camel_medium_get_content (medium); visible = CAMEL_IS_MIME_MESSAGE (content); + + g_object_unref (mime_part); } exit: |