diff options
-rw-r--r-- | mail/e-mail-backend.c | 5 | ||||
-rw-r--r-- | shell/e-shell-backend.c | 15 | ||||
-rw-r--r-- | shell/e-shell-backend.h | 1 |
3 files changed, 20 insertions, 1 deletions
diff --git a/mail/e-mail-backend.c b/mail/e-mail-backend.c index d0631b13dd..fb2a384796 100644 --- a/mail/e-mail-backend.c +++ b/mail/e-mail-backend.c @@ -280,7 +280,7 @@ mail_backend_prepare_for_quit_cb (EShell *shell, static void mail_backend_quit_requested_cb (EShell *shell, EShellQuitReason reason, - EShellBackend *shell_backend) + EShellBackend *mail_shell_backend) { CamelFolder *folder; GtkWindow *window; @@ -301,6 +301,9 @@ mail_backend_quit_requested_cb (EShell *shell, strcmp(e_shell_window_get_active_view((EShellWindow *)window), "mail") != 0) return; + if (!e_shell_backend_is_started (mail_shell_backend)) + return; + /* Check Outbox for any unsent messages. */ folder = e_mail_local_get_folder (E_MAIL_LOCAL_FOLDER_OUTBOX); diff --git a/shell/e-shell-backend.c b/shell/e-shell-backend.c index cd672842f1..03acc0ef04 100644 --- a/shell/e-shell-backend.c +++ b/shell/e-shell-backend.c @@ -508,6 +508,21 @@ e_shell_backend_start (EShellBackend *shell_backend) } /** + * e_shell_backend_is_started: + * @shell_backend: an #EShellBackend + * + * Returns whether was shelll_backend already started, by + * calling e_shell_backend_start(). + **/ +gboolean +e_shell_backend_is_started (EShellBackend *shell_backend) +{ + g_return_val_if_fail (E_IS_SHELL_BACKEND (shell_backend), FALSE); + + return shell_backend->priv->started; +} + +/** * e_shell_backend_migrate: * @shell_backend: an #EShellBackend * @major: major part of version to migrate from diff --git a/shell/e-shell-backend.h b/shell/e-shell-backend.h index 1810c8c6e5..3364b16589 100644 --- a/shell/e-shell-backend.h +++ b/shell/e-shell-backend.h @@ -127,6 +127,7 @@ void e_shell_backend_add_activity (EShellBackend *shell_backend, gboolean e_shell_backend_is_busy (EShellBackend *shell_backend); void e_shell_backend_cancel_all (EShellBackend *shell_backend); void e_shell_backend_start (EShellBackend *shell_backend); +gboolean e_shell_backend_is_started (EShellBackend *shell_backend); gboolean e_shell_backend_migrate (EShellBackend *shell_backend, gint major, gint minor, |