David Byron found a problem multiple -d options when libcurl was built with

--enable-debug, as then curl used free() on memory allocated both with
normal malloc() and with libcurl-provided functions, when the latter MUST be
freed with curl_free() in debug builds.
This commit is contained in:
Daniel Stenberg 2006-03-27 21:59:40 +00:00
parent d74725ce67
commit f17d9bba14
3 changed files with 14 additions and 2 deletions

View File

@ -6,6 +6,12 @@
Changelog Changelog
Daniel (27 March 2006)
- David Byron found a problem multiple -d options when libcurl was built with
--enable-debug, as then curl used free() on memory allocated both with
normal malloc() and with libcurl-provided functions, when the latter MUST be
freed with curl_free() in debug builds.
Daniel (26 March 2006) Daniel (26 March 2006)
- Tor Arntsen figured out that TFTP was broken on a lot of systems since we - Tor Arntsen figured out that TFTP was broken on a lot of systems since we
called bind() with a too big argument in the 3rd parameter and at least called bind() with a too big argument in the 3rd parameter and at least

View File

@ -16,6 +16,7 @@ This release includes the following changes:
This release includes the following bugfixes: This release includes the following bugfixes:
o fixed debug build crash with -d
o TFTP works on more systems o TFTP works on more systems
o generates a fine AIX Toolbox RPM spec o generates a fine AIX Toolbox RPM spec
o treat FTP AUTH failures properly o treat FTP AUTH failures properly
@ -29,6 +30,7 @@ Other curl-related news since the previous public release:
This release would not have looked like this without help, code, reports and This release would not have looked like this without help, code, reports and
advice from friends like these: advice from friends like these:
Dan Fandrich, Ilja van Sprundel, David McCreedy, Tor Arntsen, Xavier Bouchoux Dan Fandrich, Ilja van Sprundel, David McCreedy, Tor Arntsen, Xavier Bouchoux,
David Byron
Thanks! (and sorry if I forgot to mention someone) Thanks! (and sorry if I forgot to mention someone)

View File

@ -1892,7 +1892,11 @@ static ParameterError getparameter(char *flag, /* f or -long-flag */
/* we already have a string, we append this one /* we already have a string, we append this one
with a separating &-letter */ with a separating &-letter */
char *oldpost=config->postfields; char *oldpost=config->postfields;
config->postfields=aprintf("%s&%s", oldpost, postdata); size_t newlen = strlen(oldpost) + strlen(postdata) + 2;
config->postfields=malloc(newlen);
if(!config->postfields)
return PARAM_NO_MEM;
snprintf(config->postfields, newlen, "%s&%s", oldpost, postdata);
free(oldpost); free(oldpost);
free(postdata); free(postdata);
} }