[PATCH 03/10] add: free leaked pathspec after add_files_to_cache()
- From
Jeff King <peff@peff.net>
- Date
- Sep 5, 2017, 13:04 UTC
- Message-ID
- <20170905130410.3sexuoc7a42yc2t7@sigill.intra.peff.net>
- In-Reply-To
- <20170905130149.agc3zp3s6i6e5aki@sigill.intra.peff.net>
After run_diff_files, we throw away the rev_info struct, including the pathspec that we copied into it, leaking the memory. this is probably not a big deal in practice. We usually only run this once per process, and the leak is proportional to the pathspec list we're already holding in memory.
But it's still a leak, and it pollutes leak-checker output, making it harder to find important leaks.
Signed-off-by: Jeff King <peff@peff.net> --- builtin/add.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/builtin/add.c b/builtin/add.c index c20548e4f5..ef625e3fb8 100644 --- a/builtin/add.c +++ b/builtin/add.c @@ -119,6 +119,7 @@ int add_files_to_cache(const char *prefix, rev.diffopt.flags |= DIFF_OPT_OVERRIDE_SUBMODULE_CONFIG; rev.max_count = 0; /* do not compare unmerged paths with stage #2 */ run_diff_files(&rev, DIFF_RACY_IS_MODIFIED); + clear_pathspec(&rev.prune_data); return !!data.add_errors; }
-- 2.14.1.721.gc5bc1565f1