aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-session.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/mail-session.c')
-rw-r--r--mail/mail-session.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/mail/mail-session.c b/mail/mail-session.c
index 7328581a89..f38fcd98fd 100644
--- a/mail/mail-session.c
+++ b/mail/mail-session.c
@@ -221,6 +221,12 @@ get_password (CamelSession *session, CamelService *service, const char *domain,
if (flags & CAMEL_SESSION_PASSWORD_SECRET)
eflags |= E_PASSWORDS_SECRET;
+ /* HACK: breaks abstraction ...
+ e_account_writable doesn't use the eaccount, it also uses the same writable key for
+ source and transport */
+ if (!e_account_writable(NULL, E_ACCOUNT_SOURCE_SAVE_PASSWD))
+ eflags |= E_PASSWORDS_DISABLE_REMEMBER;
+
ret = e_passwords_ask_password(title, domain, key, prompt, eflags, &remember, NULL);
g_free(title);