From: Azat Khuzhin Date: Thu, 28 Feb 2013 13:19:44 +0000 (+0400) Subject: uri decode: fix for warning "use of uninitialised value" X-Git-Tag: release-2.1.3-alpha~41 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=64b6eceaba1a40ab0b175fa9fd9329d3e978ce6e;p=libevent uri decode: fix for warning "use of uninitialised value" This patch add check in evhttp_decode_uri_internal() that next 2 symbols are exists in array of chars for decoding, if don't have two next 2 symbols don't try to decode '%FF' --- diff --git a/http.c b/http.c index b94fed8c..ff331e6c 100644 --- a/http.c +++ b/http.c @@ -2889,8 +2889,8 @@ evhttp_decode_uri_internal( decode_plus = 1; } else if (c == '+' && decode_plus) { c = ' '; - } else if (c == '%' && EVUTIL_ISXDIGIT_(uri[i+1]) && - EVUTIL_ISXDIGIT_(uri[i+2])) { + } else if (length > 2 && i < (length - 2) && c == '%' && + EVUTIL_ISXDIGIT_(uri[i+1]) && EVUTIL_ISXDIGIT_(uri[i+2])) { char tmp[3]; tmp[0] = uri[i+1]; tmp[1] = uri[i+2];