[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Consistent error codes from RA layers

From: <svnlgo_at_mobsol.be>
Date: Thu, 6 Mar 2008 15:41:53 +0100

Quoting Julian Foad <julianfoad_at_btopenworld.com>:

> Code like this appears in several places:
> > err = editor->delete_entry(path, item->revision, parent_baton, pool);
> > if (err)
> > {
> > if (err->apr_err == SVN_ERR_FS_NOT_FOUND
> > || err->apr_err == SVN_ERR_RA_DAV_PATH_NOT_FOUND)
> These two errors both mean "the item was not present in the repository". When
> committing to the repository, this indicates that the WC is out of date
> w.r.t.
> the repository.
> SVN_ERR_FS_NOT_FOUND is sent by the file or svn RA layers, and
> SVN_ERR_RA_DAV_PATH_NOT_FOUND is sent by the http/https RA layers, with the
> same meaning.
> The RA layers are intended to provide a consistent interface, so I think all
> the RA layers ought to be made to return the same error code for this case.


> At the very least, svn_delta_editor_t ought to document the error codes that
> its functions return in this and similar situations.

Too bad C doesn't have a 'throws' statement like Java, but with a macro we
should be able to implement both the 'document error codes' and 'check that no
other error codes are returned' part.


This message was sent using IMP, the Internet Messaging Program.

To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-03-06 16:32:37 CET

This is an archived mail posted to the Subversion Dev mailing list.