From 5c0bea1874a655ba23a2df458e12faf9e23b3ae6 Mon Sep 17 00:00:00 2001 From: Sergio Villar Senin Date: Thu, 13 Aug 2009 11:49:03 +0200 Subject: [PATCH] Fixes NB#126941 fixes some potential invalid dereference issues --- src/hildon2/modest-msg-view-window.c | 14 +++++++++----- src/widgets/modest-recpt-editor.c | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/hildon2/modest-msg-view-window.c b/src/hildon2/modest-msg-view-window.c index 3d8626b..772f440 100644 --- a/src/hildon2/modest-msg-view-window.c +++ b/src/hildon2/modest-msg-view-window.c @@ -1947,7 +1947,7 @@ message_reader (ModestMsgViewWindow *window, GtkTreeRowReference *row_reference) { ModestWindowMgr *mgr; - TnyAccount *account; + TnyAccount *account = NULL; MsgReaderInfo *info; /* We set the header from model while we're loading */ @@ -2001,7 +2001,8 @@ message_reader (ModestMsgViewWindow *window, TNY_FOLDER_STORE (folder), message_reader_performer, info); - g_object_unref (folder); + if (folder) + g_object_unref (folder); return TRUE; } } @@ -2009,7 +2010,9 @@ message_reader (ModestMsgViewWindow *window, if (header) { folder = tny_header_get_folder (header); } - account = tny_folder_get_account (folder); + if (folder) + account = tny_folder_get_account (folder); + info = g_slice_new (MsgReaderInfo); info->msg_uid = g_strdup (msg_uid); if (folder) @@ -2026,14 +2029,15 @@ message_reader (ModestMsgViewWindow *window, info->row_reference = NULL; message_reader_performer (FALSE, NULL, (GtkWindow *) window, account, info); - g_object_unref (account); + if (account) + g_object_unref (account); if (folder) g_object_unref (folder); return TRUE; } -gboolean +gboolean modest_msg_view_window_select_next_message (ModestMsgViewWindow *window) { ModestMsgViewWindowPrivate *priv; diff --git a/src/widgets/modest-recpt-editor.c b/src/widgets/modest-recpt-editor.c index 4ad939f..0136388 100644 --- a/src/widgets/modest-recpt-editor.c +++ b/src/widgets/modest-recpt-editor.c @@ -305,7 +305,7 @@ modest_recpt_editor_replace_with_resolved_recipients (ModestRecptEditor *recpt_e gtk_text_buffer_delete (buffer, start, end); - while (email_lists_list) { + while (email_lists_list && recipient_ids_list) { gchar *recipient_id = (gchar *) recipient_ids_list->data; GSList *email_list = (GSList *) email_lists_list->data; -- 1.7.9.5