Philip Martin wrote on Mon, Jul 15, 2013 at 11:22:27 +0100:
> danie...@apache.org writes:
> 
> > Author: danielsh
> > Date: Sun Jul 14 18:07:54 2013
> > New Revision: 1503010
> >
> > URL: http://svn.apache.org/r1503010
> > Log:
> > svn_utf_*: Improve error handling.
> >
> > This is part of a patch I posted recently.  The remaining part --- handling
> > APR_EINVAL and APR_ENOTIMPL as fatal errors --- may be committed separately
> > (for ease of backporting).
> >
> > * subversion/libsvn_subr/utf.c
> >   (xlate_alloc_handle): Tweak the error handling so that apr_strerror() of 
> > the
> >     error code is included in the error chain, in addition to the custom 
> > error
> >     added here.  The incumbent code would report error codes such as E70023,
> >     but mere mortals aren't supposed to know what errno error that maps to,
> >     and that is useful information:
> >
> >       svn: E070023: Can't create a character converter from native encoding 
> > to 'UTF-8'
> >       svn: E070023: This function has not been implemented on this platform
> 
> Is that an example of the old output, or the new output, or something
> else?  E070023 is ENOTIMPL and xlate_alloc_handle catches that error and
> so will not produce any error output.

That is example of how the output looks in combination with the patch to
s/else if/if/.  It's representative insofar as 70023 is APR_ENOTIMPL and
the last element of the error chain is apr_strerror(ENOTIMPL), but you
are correct that xlate_alloc_handle() can't produce it in HEAD.

Reply via email to