On 1/18/06, André Malo <[EMAIL PROTECTED]> wrote: > * Garrett Rooney wrote: > > > The specific problem I'm trying to fix is that mod_dav_svn fails to > > run a pre-lock hook script when you try to lock a filename with double > > byte characters. It never even gets to the point of trying to run the > > script, it fails trying to build the command line because it can't > > convert the filename from utf8 to the native encoding because the > > locale is C and thus the native encoding is 7 bit ascii. I'm having > > trouble finding a work around for this that doesn't involve setting > > the locale, although if there's anything obvious I'm missing I'd love > > to hear it. > > It doesn't belong here, but... I'm wondering why the path isn't passed as > UTF-8. Why is it translated to the locale at all? It's all happening within > the svn file system, so I'd really expect to get utf-8 and would consider > locale translation as a bug.
Well, I imagine that the assumption is that any hook script is going to be using the actual locale specified in LANG/LC_ALL/etc env variables, so if we don't translate to that locale it'll get rather confused by utf8 data in its command line. As a general rule svn translates from native -> utf8 on input and from utf8 -> native for output. Ironically, if the LANG/LC_ALL/etc env vars were being followed by httpd this translation would be a noop, since the system uses a utf8 locale... -garrett