From: Timo Sirainen Date: Thu, 18 Jun 2015 08:10:05 +0000 (+0300) Subject: lib-http: http_client_request_send() failure returned already-freed error string. X-Git-Tag: 2.2.19.rc1~312 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2ff548b46061f984def8d36736745333b8405a31;p=thirdparty%2Fdovecot%2Fcore.git lib-http: http_client_request_send() failure returned already-freed error string. --- diff --git a/src/lib-http/http-client-request.c b/src/lib-http/http-client-request.c index b5bc6a47e3..2e64991ec1 100644 --- a/src/lib-http/http-client-request.c +++ b/src/lib-http/http-client-request.c @@ -832,11 +832,16 @@ static int http_client_request_send_real(struct http_client_request *req, int http_client_request_send(struct http_client_request *req, const char **error_r) { + char *errstr = NULL; int ret; T_BEGIN { ret = http_client_request_send_real(req, error_r); + if (ret < 0) + errstr = i_strdup(*error_r); } T_END; + *error_r = t_strdup(errstr); + i_free(errstr); return ret; }