When we click on the compare history link
"r4 < r3 ..."
we must redirect for this url:
But the web browser change
. So... we need
as the url parameter separator.
We change the
to do this. Hire is the patch:
< $ps .= ';' . $p.'='.urlEncode(shift( @params )||'');
> $ps .= '&' . $p.'='.urlEncode(shift( @params )||'');
< $ps =~ s/^;/?/;
> $ps =~ s/^&/?/;
There are many other places where TWiki generates multiple parameters, so this seems to be a bigger issue. The safest fix is to prevent
from getting escaped as
No browser should escape
, and I doubt that they do. The semicolon has been chosen instead of the ampersand because usually it is the ampersand which creates a lot of escaping hassle because of its special meaning in HTML.
The Escaping occurs during redirection to the HTTPS URL, see the following telnet transcript:
$ telnet safernet.org.br 80
Connected to safernet.org.br.
Escape character is '^]'.
HEAD http://safernet.org.br/twiki/bin/rdiff/SaferNet/Divulgue?rev1=4;rev2=3 HTTP/1.0
HTTP/1.1 302 Found
Date: Tue, 26 Dec 2006 19:32:22 GMT
Content-Type: text/html; charset=iso-8859-1
Connection closed by foreign host.
So the question to Aurelio is: How do you do the redirecting? Is this Apache based or via a TWiki feature?
It would be nice if the reporters would provide feedback.
The report was against 4.0.4. Is this a problem in 4.1.0?
I think Harald is right that the issue may be related to the redirecting.
Discarding under the 30 day rule.