aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog7
-rw-r--r--mail/mail-ops.c20
2 files changed, 27 insertions, 0 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 68afaee948..9d272b3021 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,10 @@
+2001-09-14 Jeffrey Stedfast <fejj@ximian.com>
+
+ * mail-ops.c (mail_send_message): Append a message to any
+ exception we get appending to any folders after having sent the
+ message successfully saying that the message was sent successfully
+ so the user doesn't misinterpret the error.
+
2001-09-13 Jon Trowbridge <trow@ximian.com>
* mail-callbacks.c (composer_get_message): Fixed double-freeing of
diff --git a/mail/mail-ops.c b/mail/mail-ops.c
index a8b05560fd..9a3976c6e8 100644
--- a/mail/mail-ops.c
+++ b/mail/mail-ops.c
@@ -542,6 +542,15 @@ mail_send_message(CamelMimeMessage *message, const char *destination, CamelFilte
NULL, NULL, NULL, "", ex);
if (camel_exception_is_set (ex)) {
+ char *description;
+ ExceptionId id;
+
+ id = camel_exception_get_id (ex);
+ description = g_strdup (camel_exception_get_description (ex));
+ camel_exception_setv (ex, id, "%s\n%s", description,
+ _("However, the message was successfully sent."));
+ g_free (description);
+
camel_message_info_free (info);
return;
}
@@ -562,6 +571,17 @@ mail_send_message(CamelMimeMessage *message, const char *destination, CamelFilte
if (folder) {
camel_folder_append_message (folder, message, info, ex);
+ if (camel_exception_is_set (ex)) {
+ char *description;
+ ExceptionId id;
+
+ id = camel_exception_get_id (ex);
+ description = g_strdup (camel_exception_get_description (ex));
+ camel_exception_setv (ex, id, "%s\n%s", description,
+ _("However, the message was successfully sent."));
+ g_free (description);
+ }
+
camel_folder_sync (folder, FALSE, NULL);
camel_object_unref (CAMEL_OBJECT (folder));
}