diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2011-01-22 06:40:22 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2011-01-22 06:40:22 +0800 |
commit | 54ae8f0a7dfd79bed00757ef1f17f0ede085a7a3 (patch) | |
tree | 6ccb94678a99f3e6ab8b464a170893aa16df3726 /mail/em-composer-utils.c | |
parent | b1565f53d797fe4dbbf7256eca060eb4d8ee9ee4 (diff) | |
download | gsoc2013-evolution-54ae8f0a7dfd79bed00757ef1f17f0ede085a7a3.tar.gz gsoc2013-evolution-54ae8f0a7dfd79bed00757ef1f17f0ede085a7a3.tar.zst gsoc2013-evolution-54ae8f0a7dfd79bed00757ef1f17f0ede085a7a3.zip |
Bug 640091 - Improve error handling during send post-processing
If a newly-composed message was successfully sent but an error occurred
during post-processing (outgoing filters or appending to a Sent folder),
close the composer window and show an alert in the main window.
Diffstat (limited to 'mail/em-composer-utils.c')
-rw-r--r-- | mail/em-composer-utils.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/mail/em-composer-utils.c b/mail/em-composer-utils.c index 5dfa1ffa05..2668e2f1e0 100644 --- a/mail/em-composer-utils.c +++ b/mail/em-composer-utils.c @@ -489,7 +489,21 @@ composer_send_completed (EMailSession *session, goto exit; } - if (error != NULL) { + /* Post-processing errors are shown in the shell window. */ + if (g_error_matches (error, E_MAIL_ERROR, E_MAIL_ERROR_POST_PROCESSING)) { + EAlert *alert; + EShell *shell; + + shell = e_msg_composer_get_shell (context->composer); + + alert = e_alert_new ( + "mail-composer:send-post-processing-error", + error->message, NULL); + e_shell_submit_alert (shell, alert); + g_object_unref (alert); + + /* All other errors are shown in the composer window. */ + } else if (error != NULL) { gint response; /* Clear the activity bar before |