diff options
author | Joe Shaw <joe@ximian.com> | 2001-07-04 06:33:14 +0800 |
---|---|---|
committer | Joe Shaw <joeshaw@src.gnome.org> | 2001-07-04 06:33:14 +0800 |
commit | dd5ad61e1977b67f8790d488b96d58237b095718 (patch) | |
tree | 84db2af6355aee2ecb2e7d9c36e9d87638074332 /mail/mail-callbacks.c | |
parent | 401d5cd43d5a981e137c448fdcef00d000f7d1f3 (diff) | |
download | gsoc2013-evolution-dd5ad61e1977b67f8790d488b96d58237b095718.tar.gz gsoc2013-evolution-dd5ad61e1977b67f8790d488b96d58237b095718.tar.zst gsoc2013-evolution-dd5ad61e1977b67f8790d488b96d58237b095718.zip |
If msg is NULL, fetch the message and requeue a mail_reply call. Fixes bug
2001-07-03 Joe Shaw <joe@ximian.com>
* mail-callbacks.c (mail_reply): If msg is NULL, fetch the message
and requeue a mail_reply call. Fixes bug #3816.
(requeue_mail_reply): Callback from mail_get_message().
svn path=/trunk/; revision=10772
Diffstat (limited to 'mail/mail-callbacks.c')
-rw-r--r-- | mail/mail-callbacks.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c index cfa2cf9ba0..9deda6b17b 100644 --- a/mail/mail-callbacks.c +++ b/mail/mail-callbacks.c @@ -763,6 +763,14 @@ mail_generate_reply (CamelFolder *folder, CamelMimeMessage *message, const char return composer; } +static void +requeue_mail_reply(CamelFolder *folder, char *uid, CamelMimeMessage *msg, void *data) +{ + int mode = GPOINTER_TO_INT(data); + + mail_reply(folder, msg, uid, mode); +} + void mail_reply (CamelFolder *folder, CamelMimeMessage *msg, const char *uid, int mode) { @@ -770,9 +778,14 @@ mail_reply (CamelFolder *folder, CamelMimeMessage *msg, const char *uid, int mod struct post_send_data *psd; g_return_if_fail (folder != NULL); - g_return_if_fail (msg != NULL); g_return_if_fail (uid != NULL); + if (!msg) { + mail_get_message (folder, uid, requeue_mail_reply, + GINT_TO_POINTER(mode), mail_thread_new); + return; + } + psd = g_new (struct post_send_data, 1); psd->folder = folder; camel_object_ref (CAMEL_OBJECT (psd->folder)); |