aboutsummaryrefslogtreecommitdiffstats
path: root/modules/mail/e-mail-shell-view-private.c
diff options
context:
space:
mode:
Diffstat (limited to 'modules/mail/e-mail-shell-view-private.c')
-rw-r--r--modules/mail/e-mail-shell-view-private.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/modules/mail/e-mail-shell-view-private.c b/modules/mail/e-mail-shell-view-private.c
index 05488156a7..aaa4e5e4f3 100644
--- a/modules/mail/e-mail-shell-view-private.c
+++ b/modules/mail/e-mail-shell-view-private.c
@@ -1096,6 +1096,7 @@ e_mail_shell_view_send_receive (EMailShellView *mail_shell_view,
EShellWindow *shell_window;
EShellBackend *shell_backend;
EMailBackend *backend;
+ EMailSession *session;
g_return_if_fail (mail_shell_view != NULL);
@@ -1104,25 +1105,25 @@ e_mail_shell_view_send_receive (EMailShellView *mail_shell_view,
shell_backend = e_shell_view_get_shell_backend (shell_view);
backend = E_MAIL_BACKEND (shell_backend);
+ session = e_mail_backend_get_session (backend);
em_utils_clear_get_password_canceled_accounts_flag ();
if (!account_uid) {
switch (mode) {
case E_MAIL_SEND_RECEIVE_BOTH:
- mail_send_receive (GTK_WINDOW (shell_window), backend);
+ mail_send_receive (GTK_WINDOW (shell_window), session);
break;
case E_MAIL_SEND_RECEIVE_RECEIVE:
- mail_receive (GTK_WINDOW (shell_window), backend);
+ mail_receive (GTK_WINDOW (shell_window), session);
break;
case E_MAIL_SEND_RECEIVE_SEND:
- mail_send (backend);
+ mail_send (session);
break;
}
} else {
/* allow only receive on individual accounts */
EAccount *account;
- EMailSession *session;
CamelService *service;
account = e_get_account_by_uid (account_uid);
@@ -1131,13 +1132,10 @@ e_mail_shell_view_send_receive (EMailShellView *mail_shell_view,
if (!account->enabled)
return;
- session = e_mail_backend_get_session (backend);
-
service = camel_session_get_service (
CAMEL_SESSION (session), account->uid);
- if (CAMEL_IS_SERVICE (service))
- mail_receive_service (backend, service);
+ mail_receive_service (service);
}
}