summaryrefslogtreecommitdiff
path: root/unpack-trees.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-10-25 23:06:56 (GMT)
committerJunio C Hamano <gitster@pobox.com>2021-10-25 23:06:56 (GMT)
commitbfa646c2cbad55cf652344415616eadc9e20f3c4 (patch)
tree6eca71a7a1f8939f77df27b83bb5a0b85fa887b9 /unpack-trees.c
parent91016984db40c41df0ab8ec39344e703cf6a2a2b (diff)
parent6e658547d35515da6ba55d285d6699b7f04cb939 (diff)
downloadgit-bfa646c2cbad55cf652344415616eadc9e20f3c4.zip
git-bfa646c2cbad55cf652344415616eadc9e20f3c4.tar.gz
git-bfa646c2cbad55cf652344415616eadc9e20f3c4.tar.bz2
Merge branch 'ab/unpack-trees-leakfix'
Leakfix. * ab/unpack-trees-leakfix: sequencer: fix a memory leak in do_reset() sequencer: add a "goto cleanup" to do_reset() unpack-trees: don't leak memory in verify_clean_subdirectory()
Diffstat (limited to 'unpack-trees.c')
-rw-r--r--unpack-trees.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/unpack-trees.c b/unpack-trees.c
index a7e1712..89ca95c 100644
--- a/unpack-trees.c
+++ b/unpack-trees.c
@@ -2156,9 +2156,10 @@ static int verify_clean_subdirectory(const struct cache_entry *ce,
if (o->dir)
d.exclude_per_dir = o->dir->exclude_per_dir;
i = read_directory(&d, o->src_index, pathbuf, namelen+1, NULL);
+ dir_clear(&d);
+ free(pathbuf);
if (i)
return add_rejected_path(o, ERROR_NOT_UPTODATE_DIR, ce->name);
- free(pathbuf);
return cnt;
}