Once we committed the locked index, we should release the lockfile. In most cases this is done automatically when the process ends, but this is not true in this case. Signed-off-by: Miklos Vajna <vmiklos@xxxxxxxxxxxxxx> --- On Sat, Sep 06, 2008 at 04:12:23AM +0200, Miklos Vajna <vmiklos@xxxxxxxxxxxxxx> wrote: > > Try reverting 18668f5 (builtin-merge: avoid run_command_v_opt() for > > recursive and subtree, 2008-08-28). That patch seems to be > > seriously broken. > > Yes, that works around the problem. I'll try to send a fix later > today. Here is - I think - the proper prefix. builtin-merge.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/builtin-merge.c b/builtin-merge.c index b857cf6..bb09e6f 100644 --- a/builtin-merge.c +++ b/builtin-merge.c @@ -576,6 +576,7 @@ static int try_merge_strategy(const char *strategy, struct commit_list *common, (write_cache(index_fd, active_cache, active_nr) || commit_locked_index(lock))) die ("unable to write %s", get_index_file()); + rollback_lock_file(lock); return clean ? 0 : 1; } else { args = xmalloc((4 + commit_list_count(common) + -- 1.6.0.1 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html