aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog7
-rw-r--r--mail/mail-component.c4
2 files changed, 10 insertions, 1 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 7ea7024651..1b961d0c82 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -7,6 +7,13 @@
2005-02-21 Not Zed <NotZed@Ximian.com>
+ ** See bug #34153 and no doubt duplicates
+
+ * mail-component.c (impl_requestQuit): use the VISIBLE count not
+ the TOTAL count to check if there are unsent emails.
+
+2005-02-21 Not Zed <NotZed@Ximian.com>
+
** See bug #71528.
* em-migrate.c (remove_system_searches, em_migrate_1_4): remove
diff --git a/mail/mail-component.c b/mail/mail-component.c
index f22e88210c..bd322ebf18 100644
--- a/mail/mail-component.c
+++ b/mail/mail-component.c
@@ -636,14 +636,16 @@ impl_requestQuit(PortableServer_Servant servant, CORBA_Environment *ev)
{
/*MailComponent *mc = MAIL_COMPONENT(bonobo_object_from_servant(servant));*/
CamelFolder *folder;
+ guint32 unsent;
if (!e_msg_composer_request_close_all())
return FALSE;
folder = mc_default_folders[MAIL_COMPONENT_FOLDER_OUTBOX].folder;
if (folder != NULL
- && camel_folder_get_message_count(folder) != 0
&& camel_session_is_online(session)
+ && camel_object_get(folder, NULL, CAMEL_FOLDER_VISIBLE, &unsent, 0) == 0
+ && unsent > 0
&& e_error_run(NULL, "mail:exit-unsaved", NULL) != GTK_RESPONSE_YES)
return FALSE;