On Thu, Feb 25, 2010 at 12:11 AM, Bert Huijben <bert_at_qqmail.nl> wrote:
>> -----Original Message-----
>> From: lieven.govaerts_at_gmail.com [mailto:lieven.govaerts_at_gmail.com] On
>> Behalf Of Lieven Govaerts
>> Sent: woensdag 24 februari 2010 23:39
>> To: C. Michael Pilato
>> Cc: Subversion Development
>> Subject: Re: bug report: ra_serf gets PROPFIND failure on certain non-
>> ASCII paths
>> These paths are canonicalized before being used, but
>> svn_uri_canonicalize doesn't touch the encoded characters. Maybe it
>> should just convert those letters to lowercase? I don't really see a
>> better fix.
> svn_uri_canonicalize is still used for more than urls/uris, so it doesn't handle any encoding itself.
> But besides that, I also think this is not the right way to fix this. For several characters in uris it is optional if they are escaped or not. We need a better fix than just fixing the casing of the escaped characters...
> Unescaping the paths would be an option that resolves it in the generic case, or unescape followed by a specific standard escaping. (This last method is used in some class libraries to avoid similar issues, but to provide a useful uri anyway)
Attached patch fixes the problem. Better suggestions are welcome, I'll
ra_serf: Fix support for international characters in paths.
Found by: cmpilato
(end_propfind): Replace call to svn_uri_canonicalize with a call to
(end_merge): Here too.
(svn_ra_serf__uri_to_internal): New function declaration.
(svn_ra_serf__uri_to_internal): New function definition.
Received on 2010-02-25 12:37:39 CET