]> granicus.if.org Git - curl/commitdiff
imap.c: imap_sendf() fix va_start/va_end matching
authorYang Tse <yangsita@gmail.com>
Wed, 24 Jul 2013 14:44:37 +0000 (16:44 +0200)
committerYang Tse <yangsita@gmail.com>
Wed, 24 Jul 2013 14:46:25 +0000 (16:46 +0200)
lib/imap.c

index 3547a346735dd8b7abb862f4a1df506eceff7e93..ea175e6b98de491bfb8ca3cdc0c74a5ca95120f5 100644 (file)
@@ -2063,7 +2063,8 @@ static CURLcode imap_sendf(struct connectdata *conn, const char *fmt, ...)
   struct imap_conn *imapc = &conn->proto.imapc;
   char *taggedfmt;
   va_list ap;
-  va_start(ap, fmt);
+
+  DEBUGASSERT(fmt);
 
   /* Calculate the next command ID wrapping at 3 digits */
   imapc->cmdid = (imapc->cmdid + 1) % 1000;
@@ -2078,10 +2079,11 @@ static CURLcode imap_sendf(struct connectdata *conn, const char *fmt, ...)
     return CURLE_OUT_OF_MEMORY;
 
   /* Send the data with the tag */
+  va_start(ap, fmt);
   result = Curl_pp_vsendf(&imapc->pp, taggedfmt, ap);
+  va_end(ap);
 
   Curl_safefree(taggedfmt);
-  va_end(ap);
 
   return result;
 }