From 2ba62322a74a408e90b53afb185ba555a157ecb3 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 19 Sep 2019 10:06:01 +0200 Subject: [PATCH] mime: make Curl_mime_duppart() assert if called without valid dst Fixes warning detected by PVS-Studio Fixes #4374 --- lib/mime.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/mime.c b/lib/mime.c index 0fb3ae81c..081e51e50 100644 --- a/lib/mime.c +++ b/lib/mime.c @@ -1135,6 +1135,8 @@ CURLcode Curl_mime_duppart(curl_mimepart *dst, const curl_mimepart *src) const curl_mimepart *s; CURLcode res = CURLE_OK; + DEBUGASSERT(dst); + /* Duplicate content. */ switch(src->kind) { case MIMEKIND_NONE: @@ -1184,20 +1186,18 @@ CURLcode Curl_mime_duppart(curl_mimepart *dst, const curl_mimepart *src) } } - /* Duplicate other fields. */ - if(dst != NULL) + if(!res) { + /* Duplicate other fields. */ dst->encoder = src->encoder; - else - res = CURLE_WRITE_ERROR; - if(!res) res = curl_mime_type(dst, src->mimetype); + } if(!res) res = curl_mime_name(dst, src->name); if(!res) res = curl_mime_filename(dst, src->filename); /* If an error occurred, rollback. */ - if(res && dst) + if(res) Curl_mime_cleanpart(dst); return res;