aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/formdata.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/lib/formdata.c b/lib/formdata.c
index e035271b3..a370e65a4 100644
--- a/lib/formdata.c
+++ b/lib/formdata.c
@@ -1100,7 +1100,7 @@ static char *strippath(const char *fullfile)
free(filename); /* free temporary buffer */
- return base; /* returns an allocated string! */
+ return base; /* returns an allocated string or NULL ! */
}
/*
@@ -1207,8 +1207,12 @@ CURLcode Curl_getFormData(struct FormData **finalform,
if(post->more) {
/* if multiple-file */
- char *filebasename=
- (!file->showfilename)?strippath(file->contents):NULL;
+ char *filebasename= NULL;
+ if(!file->showfilename) {
+ filebasename = strippath(file->contents);
+ if(!filebasename)
+ return CURLE_OUT_OF_MEMORY;
+ }
result = AddFormDataf(&form, &size,
"\r\n--%s\r\nContent-Disposition: "