aboutsummaryrefslogtreecommitdiff
path: root/lib/imap.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/imap.c')
-rw-r--r--lib/imap.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/imap.c b/lib/imap.c
index c9e2a1923..52a3541bd 100644
--- a/lib/imap.c
+++ b/lib/imap.c
@@ -675,13 +675,16 @@ static CURLcode imap_select(struct connectdata *conn)
Curl_safefree(imapc->mailbox);
Curl_safefree(imapc->mailbox_uidvalidity);
+ /* Make sure the mailbox is in the correct atom format */
mailbox = imap_atom(imap->mailbox ? imap->mailbox : "");
if(!mailbox)
result = CURLE_OUT_OF_MEMORY;
else
+ /* Send the SELECT command */
result = imap_sendf(conn, "SELECT %s", mailbox);
Curl_safefree(mailbox);
+
if(!result)
state(conn, IMAP_SELECT);
@@ -697,6 +700,7 @@ static CURLcode imap_fetch(struct connectdata *conn)
result = imap_sendf(conn, "FETCH %s BODY[%s]",
imap->uid ? imap->uid : "1",
imap->section ? imap->section : "");
+
if(!result)
state(conn, IMAP_FETCH);