Re: [PATCH] rollback index if git-commit is interrupted by a signal
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- May 29, 2008, 14:03 UTC
- Message-ID
- <alpine.DEB.1.00.0805291456030.13507@racer.site.net>
- In-Reply-To
- <483EAD69.9090001@gnu.org>
Hi,
On Thu, 29 May 2008, Paolo Bonzini wrote:
Show 23 quoted lines
> > > static void rollback_index_files(void)
> > > {
> > > - switch (commit_style) {
> > > - case COMMIT_AS_IS:
> > > - break; /* nothing to do */
> > > - case COMMIT_NORMAL:
> > > - rollback_lock_file(&index_lock);
> > > - break;
> > > - case COMMIT_PARTIAL:
> > > - rollback_lock_file(&index_lock);
> > > - rollback_lock_file(&false_lock);
> > > - break;
> > > - }
> > > + rollback_lock_file(&index_lock);
> > > + rollback_lock_file(&false_lock);
> > > }
> >
> > Your commit message gives _no_ good reason for this change. As a
> > matter of fact, I imagine that this could be a regression.
>
> Without this change, there could be races between the time the lock file
> is created and the time the commit_style variable is set, leading to the
> rollback not being performed.IMO it would make much more sense to _guarantee_ that the commity_style variable is set before the index is locked. It is feasible, and there is no good reason not to do that.
Ciao, Dscho