summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-12-06 09:09:03 -0800
committerJunio C Hamano <gitster@pobox.com>2017-12-06 09:09:03 -0800
commit0175b6e2b9f99101b37cd4b1aa61711678a17105 (patch)
treef9e302f409b71729c0137109f2cd44c4901df32a
parent43240cb7316a7ea653ada00adfddd5ea80f90cf3 (diff)
parentbd58886775de24ce3a330775a35c3c2e868967ee (diff)
downloadgit-0175b6e2b9f99101b37cd4b1aa61711678a17105.tar.gz
Merge branch 'pw/sequencer-recover-from-unlockable-index' into maint
The sequencer machinery (used by "git cherry-pick A..B", and "git rebase -i", among other things) would have lost a commit if stopped due to an unlockable index file, which has been fixed. * pw/sequencer-recover-from-unlockable-index: sequencer: reschedule pick if index can't be locked
-rw-r--r--sequencer.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sequencer.c b/sequencer.c
index 2882d53120..5e09b5d34f 100644
--- a/sequencer.c
+++ b/sequencer.c
@@ -438,7 +438,8 @@ static int do_recursive_merge(struct commit *base, struct commit *next,
char **xopt;
static struct lock_file index_lock;
- hold_locked_index(&index_lock, LOCK_DIE_ON_ERROR);
+ if (hold_locked_index(&index_lock, LOCK_REPORT_ON_ERROR) < 0)
+ return -1;
read_cache();