diff --git a/entry.c b/entry.c index 65458f07a4..f879758c73 100644 --- a/entry.c +++ b/entry.c @@ -290,7 +290,7 @@ static int write_entry(struct cache_entry *ce, ce->name, new, size, &buf, dco); if (ret && string_list_has_string(&dco->paths, ce->name)) { free(new); - goto finish; + goto delayed; } } else ret = convert_to_working_tree( @@ -346,6 +346,7 @@ finish: ce->ce_flags |= CE_UPDATE_IN_BASE; state->istate->cache_changed |= CE_ENTRY_CHANGED; } +delayed: return 0; }