From 2249c12a3c2737e50d81962040dd36990aa16600 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 14 Nov 2008 16:26:39 +0000 Subject: fix an OOM problem detected by Jim Meyering --- lib/formdata.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'lib') 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: " -- cgit v1.2.3