From: Arnaud Lacombe <al@sigfpe.info>
authorpdmef <pdmef@e385b8ad-14ed-0310-8656-cc95a2468c6d>
Tue, 4 Apr 2006 07:51:11 +0000 (07:51 +0000)
committerpdmef <pdmef@e385b8ad-14ed-0310-8656-cc95a2468c6d>
Tue, 4 Apr 2006 07:51:11 +0000 (07:51 +0000)
Rocco Rutte:
- fix the underlying problem of the str_dup()-issue for IMAP
- fix imap_login overwriting imap_user as documented

git-svn-id: svn://svn.berlios.de/mutt-ng/trunk@800 e385b8ad-14ed-0310-8656-cc95a2468c6d

VERSION.svn
account.c
imap/auth_login.c

index e1be92e..5ae5aef 100644 (file)
@@ -1 +1 @@
-799
+800
index 7c8fa3c..0942adc 100644 (file)
--- a/account.c
+++ b/account.c
@@ -38,9 +38,9 @@ int mutt_account_match (const ACCOUNT * a1, const ACCOUNT * a2)
 
 #ifdef USE_IMAP
   if (a1->type == M_ACCT_TYPE_IMAP) {
-    if (ImapUser)
+    if (ImapUser && (ImapUser[0] != '\0'))
       user = ImapUser;
-    if (ImapLogin)
+    if (ImapLogin && (ImapLogin[0] != '\0'))
       login = ImapLogin;
   }
 #endif
@@ -146,7 +146,7 @@ int mutt_account_getuser (ACCOUNT * account)
   if (account->flags & M_ACCT_USER)
     return 0;
 #ifdef USE_IMAP
-  else if ((account->type == M_ACCT_TYPE_IMAP) && ImapUser)
+  else if ((account->type == M_ACCT_TYPE_IMAP) && ImapUser && (ImapUser[0] != '\0'))
     strfcpy (account->user, ImapUser, sizeof (account->user));
 #endif
 #ifdef USE_POP
@@ -179,7 +179,7 @@ int mutt_account_getlogin (ACCOUNT* account)
 #ifdef USE_IMAP
   else if (account->type == M_ACCT_TYPE_IMAP)
   {
-    if (ImapLogin) {
+    if (ImapLogin && (ImapLogin[0] != '\0')) {
       strfcpy (account->login, ImapLogin, sizeof (account->login));
       account->flags |= M_ACCT_LOGIN;
     }
index 3d8ae67..44a2cf0 100644 (file)
@@ -40,7 +40,7 @@ imap_auth_res_t imap_auth_login (IMAP_DATA * idata, const char *method)
 
   mutt_message _("Logging in...");
 
-  imap_quote_string (q_user, sizeof (q_user), idata->conn->account.user);
+  imap_quote_string (q_user, sizeof (q_user), idata->conn->account.login);
   imap_quote_string (q_pass, sizeof (q_pass), idata->conn->account.pass);
 
 #ifdef DEBUG