Browse Source

update-index: fix cache entry leak in add_one_file()

When we fail to add the cache entry to the index, we end up
just leaking the struct. We should follow the pattern of the
early-return above and free it.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Jeff King 7 years ago committed by Junio C Hamano
parent
commit
baddc96b2c
  1. 4
      builtin/update-index.c

4
builtin/update-index.c

@ -287,8 +287,10 @@ static int add_one_path(const struct cache_entry *old, const char *path, int len @@ -287,8 +287,10 @@ static int add_one_path(const struct cache_entry *old, const char *path, int len
}
option = allow_add ? ADD_CACHE_OK_TO_ADD : 0;
option |= allow_replace ? ADD_CACHE_OK_TO_REPLACE : 0;
if (add_cache_entry(ce, option))
if (add_cache_entry(ce, option)) {
free(ce);
return error("%s: cannot add to the index - missing --add option?", path);
}
return 0;
}


Loading…
Cancel
Save