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

Re: [PATCH] Call abort_edit upon editor error in repos reporter

From: Eric Gillespie <epg_at_pretzelnet.org>
Date: Wed, 02 Apr 2008 18:07:13 -0700

Karl Fogel <kfogel_at_red-bean.com> writes:

> Looks good, but why not chain any error returned by abort_edit(),
> instead of discarding it?

I thought an entire error chain is always about the same error,
but each error in the chain is more specific. This is a
completely unrelated error. It would be very odd to have this
one reporter to the user as an outermost error.

Indeed, discarding it is the general pattern:

libsvn_client/prop_commands.c:296: svn_error_clear(editor->abort_edit(edit_baton, pool));
libsvn_client/delete.c:216: svn_error_clear(editor->abort_edit(edit_baton, pool));
libsvn_client/copy.c:1035: svn_error_clear(editor->abort_edit(edit_baton, pool));
libsvn_client/commit_util.c:1739: return (*eb->real_editor->abort_edit)(eb->real_eb, pool);
libsvn_client/commit_util.c:1772: ed->abort_edit = abort_edit;
libsvn_client/add.c:773: svn_error_clear(editor->abort_edit(edit_baton, pool));
libsvn_client/commit.c:591: SVN_ERR(editor->abort_edit(edit_baton, pool));
libsvn_client/commit.c:795: svn_error_clear(editor->abort_edit(edit_baton, subpool));
libsvn_client/commit.c:1747: svn_error_clear(editor->abort_edit(edit_baton, pool));
libsvn_ra_neon/commit.c:1504: commit_editor->abort_edit = commit_abort_edit;
libsvn_ra_serf/commit.c:2052: editor->abort_edit = abort_edit;
libsvn_ra_svn/editorp.c:423: ra_svn_editor->abort_edit = ra_svn_abort_edit;
libsvn_ra_svn/editorp.c:788: SVN_CMD_ERR(ds->editor->abort_edit(ds->edit_baton, pool));
libsvn_ra_svn/editorp.c:902: svn_error_clear(editor->abort_edit(edit_baton, subpool));
libsvn_repos/commit.c:828: e->abort_edit = abort_edit;
svnserve/serve.c:653: svn_error_clear(editor->abort_edit(edit_baton, pool));
svnserve/serve.c:2329: svn_error_clear(editor->abort_edit(edit_baton, pool));
tests/libsvn_repos/repos-test.c:1593: SVN_ERR(editor->abort_edit(edit_baton, subpool));
tests/libsvn_repos/repos-test.c:1663: SVN_ERR(editor->abort_edit(edit_baton, subpool));
tests/svn_test_editor.c:572: my_editor->abort_edit = test_abort_edit;

Thanks for reviewing these two; I don't hold it against you if
you skip reviewing the swig-py nastiness ;->. Thing about that
one is that my local Python expert found a larger reference
counting issue in that code (which dates back to gstein in 2002!)
when he revieed my change. I'll bring that one up next.

-- 
Eric Gillespie <*> epg_at_pretzelnet.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-04-03 03:08:05 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.