mirror of
https://github.com/curl/curl.git
synced 2026-07-24 05:27:15 +03:00
failf: use private buffer, don't clobber receive buffer
This commit is contained in:
parent
b8191e975f
commit
f2fadf490f
1 changed files with 7 additions and 8 deletions
15
lib/sendf.c
15
lib/sendf.c
|
|
@ -243,21 +243,20 @@ void Curl_failf(struct Curl_easy *data, const char *fmt, ...)
|
|||
{
|
||||
va_list ap;
|
||||
size_t len;
|
||||
char error[CURL_ERROR_SIZE + 2];
|
||||
va_start(ap, fmt);
|
||||
|
||||
vsnprintf(data->state.buffer, BUFSIZE, fmt, ap);
|
||||
vsnprintf(error, CURL_ERROR_SIZE, fmt, ap);
|
||||
len = strlen(error);
|
||||
|
||||
if(data->set.errorbuffer && !data->state.errorbuf) {
|
||||
snprintf(data->set.errorbuffer, CURL_ERROR_SIZE, "%s", data->state.buffer);
|
||||
strcpy(data->set.errorbuffer, error);
|
||||
data->state.errorbuf = TRUE; /* wrote error string */
|
||||
}
|
||||
if(data->set.verbose) {
|
||||
len = strlen(data->state.buffer);
|
||||
if(len < BUFSIZE - 1) {
|
||||
data->state.buffer[len] = '\n';
|
||||
data->state.buffer[++len] = '\0';
|
||||
}
|
||||
Curl_debug(data, CURLINFO_TEXT, data->state.buffer, len, NULL);
|
||||
error[len] = '\n';
|
||||
error[++len] = '\0';
|
||||
Curl_debug(data, CURLINFO_TEXT, error, len, NULL);
|
||||
}
|
||||
|
||||
va_end(ap);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue