On Tue, Jul 09, 2013 at 05:12:23PM +0300, 'Daniel Shahaf' wrote:
> Bert Huijben wrote on Tue, Jul 09, 2013 at 15:34:56 +0200:
> > The tens of thousands of Windows defined error codes are not mapped by
> > Subversion or apr either, but they are certainly useful for applications. We
> > never documented that all of them must be mapped as enum value. apr_status
> > is an int for a reason.
> > 
> 
> False comparison.  apr_err has a set of values specifically reserved for
> OS errors.  An application can do APR_IS_OS_ERROR() followed by
> APR_FROM_OS_ERROR() followed by detailed inspection to its heart's
> contnet.  Point being: inclusion of OS errors in the apr_status_t value
> is part of APR's API contract --- but including serf errors in
> err->apr_err is not part of our API.

BTW, the analogy continues: if we want to put 120171 in err->apr_err, we
should provide something in our API that lets our API consumers work with
it.  For example:
#define SVN_ERROR_IS_SERF_ERROR(status) ((status) >= 120100 && (status) < 
121000))

Reply via email to