From: Dragan Dosen Date: Mon, 18 Sep 2017 07:20:43 +0000 (+0200) Subject: BUG/MINOR: contrib/modsecurity: close the va_list ap before return X-Git-Tag: v1.8-dev3~82 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2f1cacb1aaf0369cb39e14147f022fa6c321cb15;p=thirdparty%2Fhaproxy.git BUG/MINOR: contrib/modsecurity: close the va_list ap before return Make sure the va_list ap is closed before return in case the function vsnprintf() returned an error. --- diff --git a/contrib/modsecurity/modsec_wrapper.c b/contrib/modsecurity/modsec_wrapper.c index 8927b5bf46..271ec15d1d 100644 --- a/contrib/modsecurity/modsec_wrapper.c +++ b/contrib/modsecurity/modsec_wrapper.c @@ -105,9 +105,10 @@ static char *printf_dup(struct request_rec *req, char *fmt, ...) va_start(ap, fmt); len = vsnprintf(NULL, 0, fmt, ap); + va_end(ap); + if (len == -1) return NULL; - va_end(ap); out = apr_pcalloc(req->pool, len + 1); if (!out) @@ -115,9 +116,10 @@ static char *printf_dup(struct request_rec *req, char *fmt, ...) va_start(ap, fmt); len = vsnprintf(out, len + 1, fmt, ap); + va_end(ap); + if (len == -1) return NULL; - va_end(ap); return out; }