]> granicus.if.org Git - curl/commitdiff
smtp: fix memory leak in OOM
authorDaniel Stenberg <daniel@haxx.se>
Wed, 20 Sep 2017 09:33:46 +0000 (11:33 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 20 Sep 2017 09:33:46 +0000 (11:33 +0200)
Regression since ce0881edee

Coverity CID 1418139 and CID 1418136 found it, but it was also seen in
torture testing.

lib/smtp.c

index 67dc04f28a133e9006036df6bb01f4951146c185..de2dd33563342b6ac86ed500d29f4fdf836ef2d5 100644 (file)
@@ -550,8 +550,11 @@ static CURLcode smtp_perform_mail(struct connectdata *conn)
     if(!result)
       result = Curl_mime_rewind(&data->set.mimepost);
 
-    if(result)
+    if(result) {
+      free(from);
+      free(auth);
       return result;
+    }
 
     data->state.infilesize = Curl_mime_size(&data->set.mimepost);