aboutsummaryrefslogtreecommitdiff
path: root/tests/server
diff options
context:
space:
mode:
Diffstat (limited to 'tests/server')
-rw-r--r--tests/server/getpart.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/tests/server/getpart.c b/tests/server/getpart.c
index fa0f9cf52..caa1c32a7 100644
--- a/tests/server/getpart.c
+++ b/tests/server/getpart.c
@@ -61,11 +61,11 @@ char *appendstring(char *string, /* original string */
{
size_t len = strlen(buffer);
size_t needed_len = len + *stringlen + 1;
- unsigned char *buf64=NULL;
+ char *buf64=NULL;
if(base64) {
/* decode the given buffer first */
- len = Curl_base64_decode(buffer, &buf64); /* updated len */
+ len = Curl_base64_decode(buffer, (unsigned char**)&buf64); /* updated len */
buffer = buf64;
needed_len = len + *stringlen + 1; /* recalculate */
}
@@ -79,8 +79,11 @@ char *appendstring(char *string, /* original string */
string = newptr;
*stralloc = newsize;
}
- else
+ else {
+ if(buf64)
+ free(buf64);
return NULL;
+ }
}
/* memcpy to support binary blobs */
memcpy(&string[*stringlen], buffer, len);