From: Jiri Hruska Date: Sun, 24 Feb 2013 12:27:49 +0000 (+0100) Subject: imap: Reworked the logic of untagged command responses X-Git-Tag: curl-7_30_0~275 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=797b004738407a88e4891ab6fe0d9ab62f621427;p=curl imap: Reworked the logic of untagged command responses --- diff --git a/lib/imap.c b/lib/imap.c index ba1f6fd8b..b2c97136d 100644 --- a/lib/imap.c +++ b/lib/imap.c @@ -360,10 +360,10 @@ static bool imap_endofresp(struct connectdata *conn, char *line, size_t len, return TRUE; } - /* Are we processing CAPABILITY command data? */ - if(imapc->state == IMAP_CAPABILITY) { - /* Do we have a valid response? */ - if(len >= 2 && !memcmp("* ", line, 2)) { + /* Do we have an untagged command response */ + if(len >= 2 && !memcmp("* ", line, 2)) { + /* Are we processing CAPABILITY command data? */ + if(imapc->state == IMAP_CAPABILITY) { line += 2; len -= 2; @@ -425,11 +425,8 @@ static bool imap_endofresp(struct connectdata *conn, char *line, size_t len, len -= wordlen; } } - } - /* Are we processing FETCH command responses? */ - else if(imapc->state == IMAP_FETCH) { - /* Do we have a valid response? */ - if(len >= 2 && !memcmp("* ", line, 2)) { + /* Are we processing FETCH command responses? */ + else if(imapc->state == IMAP_FETCH) { *resp = '*'; return TRUE;