On 08/08/2016 21:25, Wang, Andy wrote:
> On Thu, 2016-07-14 at 21:11 +0200, Mark Thomas wrote:
>>> The only thing it might break was if someone tried to use a URL
>>> containing a % sign that wasn't encoded:
>>>
>>> String target = "/foo/bar?percent=%&hash=#";
>>> request.getRequestDispatcher(target).forward(request, response);
>>>
>>> Right?
>>
>> Right.
>>
>>>
>>> I think that case is quite rare, so I'm also +1 to introducing this
>>> new
>>> behavior as the *default* with an option to revert back to the
>>> previous
>>> behavior.
>>
>> I'm leaning that way too but I won't be in a position to do anything
>> about it for a couple of weeks. That should be fine since that would
>> be
>> in time for the next monthly release cycle.
> 
> We just ran into the problem this was intended to fix, and I'm trying
> to understand the impact of the fix.  
> 
> So with the fix in place and the behavior as default, any url with a
> standalone % in it would break.

Yes.

> With the default behavior disabled, the RequestDispatcher would not
> decode the provided path, correct?

Yes.

> There is no scenario where both a standalone % and the
> requestdispatcher decoding the provided path would both be possible?

Correct. Decoding the path means any % is treated as the start of a %nn
sequence. Standalone % would need to be encoded as %25

Mark


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to