From 0bb91218c51e7ae04975b9993ec0a5e67da75137 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 20 Oct 2008 21:56:35 +0000 Subject: added a NULL pointer check for the name field as it can in fact be NULL when dereferenced here, if the app passes in a funny combo. Detected by coverity.com --- lib/formdata.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'lib/formdata.c') diff --git a/lib/formdata.c b/lib/formdata.c index 62409ec41..e035271b3 100644 --- a/lib/formdata.c +++ b/lib/formdata.c @@ -743,8 +743,11 @@ CURLFORMcode FormAdd(struct curl_httppost **httppost, } if( !(form->flags & HTTPPOST_PTRNAME) && (form == first_form) ) { - /* copy name (without strdup; possibly contains null characters) */ - form->name = memdup(form->name, form->namelength); + /* Note that there's small risk that form->name is NULL here if the + app passed in a bad combo, so we better check for that first. */ + if(form->name) + /* copy name (without strdup; possibly contains null characters) */ + form->name = memdup(form->name, form->namelength); if(!form->name) { return_value = CURL_FORMADD_MEMORY; break; -- cgit v1.2.3