diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2013-06-15 01:45:08 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2013-06-15 11:21:40 +0800 |
commit | 9c4500a9b5b030e6fb2b8c02e518254d94c10add (patch) | |
tree | 72e5c5e0c50bb93b6d4c4fb683f78e235f8a744f /modules | |
parent | 169c9aea03c1ba03d327af2a4f0fb8bb3aabd593 (diff) | |
download | gsoc2013-evolution-9c4500a9b5b030e6fb2b8c02e518254d94c10add.tar.gz gsoc2013-evolution-9c4500a9b5b030e6fb2b8c02e518254d94c10add.tar.zst gsoc2013-evolution-9c4500a9b5b030e6fb2b8c02e518254d94c10add.zip |
MessageList: Add a "folder" property.
Also move the CamelFolder pointer into the private structure.
New functions:
message_list_ref_folder()
Diffstat (limited to 'modules')
-rw-r--r-- | modules/mail/e-mail-shell-view-private.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/modules/mail/e-mail-shell-view-private.c b/modules/mail/e-mail-shell-view-private.c index 54f4d581e4..aa9addf4a5 100644 --- a/modules/mail/e-mail-shell-view-private.c +++ b/modules/mail/e-mail-shell-view-private.c @@ -200,7 +200,7 @@ mail_shell_view_folder_tree_selection_done_cb (EMailShellView *mail_shell_view, EMailReader *reader; EMailView *mail_view; CamelFolder *folder; - gchar *list_uri; + gchar *list_uri = NULL; gchar *tree_uri; mail_shell_content = mail_shell_view->priv->mail_shell_content; @@ -216,16 +216,17 @@ mail_shell_view_folder_tree_selection_done_cb (EMailShellView *mail_shell_view, * method gets the folder from the message list is supposed to be * a hidden implementation detail, and we want to explicitly get * the folder URI from the message list here. */ - folder = MESSAGE_LIST (message_list)->folder; - if (folder) + folder = message_list_ref_folder (MESSAGE_LIST (message_list)); + if (folder != NULL) { list_uri = e_mail_folder_uri_from_folder (folder); - else - list_uri = NULL; + g_object_unref (folder); + } + tree_uri = em_folder_tree_get_selected_uri (folder_tree); /* If the folder tree and message list disagree on the current * folder, reset the folder tree to match the message list. */ - if (list_uri && g_strcmp0 (tree_uri, list_uri) != 0) + if (list_uri != NULL && g_strcmp0 (tree_uri, list_uri) != 0) em_folder_tree_set_selected (folder_tree, list_uri, FALSE); g_free (list_uri); |