diff options
author | Jeffrey Stedfast <fejj@ximian.com> | 2002-03-02 04:06:32 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2002-03-02 04:06:32 +0800 |
commit | a226b2ae8616f2047c0d3ab4e7a2cc739972cd71 (patch) | |
tree | 135c1eae3c9c400c02e0a64a4fc7da7fe8ebeded /mail | |
parent | db615484bec09356b785551f52a5a1106c02dd45 (diff) | |
download | gsoc2013-evolution-a226b2ae8616f2047c0d3ab4e7a2cc739972cd71.tar gsoc2013-evolution-a226b2ae8616f2047c0d3ab4e7a2cc739972cd71.tar.gz gsoc2013-evolution-a226b2ae8616f2047c0d3ab4e7a2cc739972cd71.tar.bz2 gsoc2013-evolution-a226b2ae8616f2047c0d3ab4e7a2cc739972cd71.tar.lz gsoc2013-evolution-a226b2ae8616f2047c0d3ab4e7a2cc739972cd71.tar.xz gsoc2013-evolution-a226b2ae8616f2047c0d3ab4e7a2cc739972cd71.tar.zst gsoc2013-evolution-a226b2ae8616f2047c0d3ab4e7a2cc739972cd71.zip |
Forward all selected messages. Fixes bug #21190.
2002-03-01 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (forward_message): Forward all selected
messages. Fixes bug #21190.
svn path=/trunk/; revision=15882
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ChangeLog | 5 | ||||
-rw-r--r-- | mail/mail-callbacks.c | 20 |
2 files changed, 18 insertions, 7 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 7103ef39b7..085fd9c29a 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,8 @@ +2002-03-01 Jeffrey Stedfast <fejj@ximian.com> + + * mail-callbacks.c (forward_message): Forward all selected + messages. Fixes bug #21190. + 2002-02-26 Jeffrey Stedfast <fejj@ximian.com> * mail-format.c (handle_text_html): Get the Content-Base if the diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c index 41733c7f23..87c7b3e506 100644 --- a/mail/mail-callbacks.c +++ b/mail/mail-callbacks.c @@ -1231,21 +1231,27 @@ do_forward_non_attached (CamelFolder *folder, char *uid, CamelMimeMessage *messa static void forward_message (FolderBrowser *fb, MailConfigForwardStyle style) { + GPtrArray *uids; + int i; + if (FOLDER_BROWSER_IS_DESTROYED (fb)) return; if (!check_send_configuration (fb)) return; - if (fb->mail_display && fb->mail_display->current_message) { - do_forward_non_attached (fb->folder, NULL, - fb->mail_display->current_message, - GINT_TO_POINTER (style)); - } else { - mail_get_message (fb->folder, fb->message_list->cursor_uid, - do_forward_non_attached, GINT_TO_POINTER (style), + uids = g_ptr_array_new (); + message_list_foreach (fb->message_list, enumerate_msg, uids); + + for (i = 0; i < uids->len; i++) { + mail_get_message (fb->folder, uids->pdata[i], + do_forward_non_attached, + GINT_TO_POINTER (style), mail_thread_new); + g_free (uids->pdata[i]); } + + g_ptr_array_free (uids, TRUE); } void |