> -----Original Message-----
> From: Blair Zajac [mailto:bl...@orcaware.com]
> Sent: zondag 24 juli 2011 16:09
> To: dev@subversion.apache.org
> Cc: comm...@subversion.apache.org
> Subject: Re: svn commit: r1150368 - in
> /subversion/trunk/subversion/libsvn_client: commit.c commit_util.c
> 
> 
> On Jul 24, 2011, at 6:50 AM, rhuij...@apache.org wrote:
> 
> > Author: rhuijben
> > Date: Sun Jul 24 13:50:44 2011
> > New Revision: 1150368
> >
> > URL: http://svn.apache.org/viewvc?rev=1150368&view=rev
> > Log:
> > Clear iterpools in two error conditions during commit to avoid deleting
files
> > with open handles when aborting fs transactions.
> >
> > The txdelta part of this patch looks like a small regression introduced
by
> > switching from subpools to dual pool handling.
> >
> > * subversion/libsvn_client/commit.c
> >  (svn_client_commit5): Clear iterpool before aborting the edit to flush
the
> >    most commonly passed scratch pool to the commit processing. This to
> avoid
> >    possible similar problems as that caught in svn_client__do_commit.
> >
> > * subversion/libsvn_client/commit_util.c
> >  (svn_client__do_commit): Clear iterpool when
> svn_wc_transmit_text_deltas3
> >    fails. The txdelta infrastructure doesn't have a well defined abort
> >    procedure so the current implementations rely on pool cleanup.
> >    But when iterpool isn't cleared here we call the editor's abort
before
> >    this cleanup runs.
> 
> Do you mean destroy here, as that's what the commit does?

The first step of a destroy is a clear and it is really the clearing that
matters here.
(I think the first clear should be a destroy, but I think the second one is
correct).

        Bert


Reply via email to