diff --git a/lib/sendf.c b/lib/sendf.c index add8af9ef..28297f4d8 100644 --- a/lib/sendf.c +++ b/lib/sendf.c @@ -154,9 +154,19 @@ void Curl_failf(struct SessionHandle *data, const char *fmt, ...) vsnprintf(data->set.errorbuffer, CURL_ERROR_SIZE, fmt, ap); data->state.errorbuf = TRUE; /* wrote error string */ - if(data->set.verbose) - Curl_debug(data, CURLINFO_TEXT, data->set.errorbuffer, - strlen(data->set.errorbuffer)); + if(data->set.verbose) { + int len = strlen(data->set.errorbuffer); + bool doneit=FALSE; + if(len < CURL_ERROR_SIZE) { + doneit = TRUE; + data->set.errorbuffer[len] = '\n'; + data->set.errorbuffer[++len] = '\0'; + } + Curl_debug(data, CURLINFO_TEXT, data->set.errorbuffer, len); + if(doneit) + /* cut off the newline again */ + data->set.errorbuffer[--len]=0; + } } va_end(ap); }