On Sat, Jul 13, 2013 at 8:39 PM, Daniel Shahaf <[email protected]> wrote:
> It appears as soon as svn_utf_cstring_to_utf8() is called --- which is > normally during argv parsing. The error happens even if the argv > arguments are all ASCII, which effectively adds a new dependency on > apr_xlate_* even for people who use only ASCII. I assume this new > failure mode for ASCII-only users means we cannot backport this change. > This now means iconv or apr-iconv are a hard global dependency where they haven't been before. I'm not sure that I like that. (If you're going to do this patch, remove the if check for EINVAL/ENOTIMPL - it's unnecessary.) IIRC, the reason is that this code gets called all the time - we had to silence the ENOTIMPL and EINVAL errors as it really shouldn't be treated as a fatal error. So, in this case, we're back to treating it as an irrecoverable error. It's probably better to just check APR_HAS_XLATE and return an error in svnsync if that's 0...and let the string pass through unmodified - which is probably fine for svnsync case...or perhaps go a step further and just refuse to build svnsync if iconv isn't supported as we might not be able to guarantee the integrity of the sync'd logs. I'm not sure how paranoid we need to be here. -- justin

