Patch for an Issue #302

This commit is contained in:
Miroslav Stampar 2012-12-17 00:40:01 +01:00
parent d4a061d0c3
commit 60baf5071e

View File

@ -615,10 +615,13 @@ class Connect(object):
value = agent.replacePayload(value, payload)
else:
if place != PLACE.URI or (value and payload and '?' in value and value.find('?') < value.find(payload)):
if place != PLACE.URI or (value and payload and '?' in value and re.search(r"\?.*%s" % re.escape(payload), value)):
# GET, URI and Cookie need to be throughly URL encoded (POST is encoded down below)
payload = urlencode(payload, '%', False, True) if place in (PLACE.GET, PLACE.COOKIE, PLACE.URI) and not skipUrlEncode else payload
value = agent.replacePayload(value, payload)
elif place == PLACE.URI and (value and payload and '?' in value and re.search(r"%s.*\?" % re.escape(payload), value)):
payload = urlencode(payload, '%')
value = agent.replacePayload(value, payload)
if conf.hpp:
if not any(conf.url.lower().endswith(_.lower()) for _ in (WEB_API.ASP, WEB_API.ASPX)):