Skip to content

Commit ade1f1c

Browse files
gitsterdscho
authored andcommitted
diff --no-index: fix logic for paths ending in '/'
Junio C Hamano <[email protected]> writes: > Hence, I think the clean-up code of this function this goto ... > >> goto out; > > ... jumps to would need > > strbuf_release(&ps_match1); > strbuf_release(&ps_match2); > > added after that "out:" label? > > If we run this test with leak sanitizer, wouldn't it find leak in > these (I haven't tried it myself---I just am speculating)? Now I did, and my speculations were both correct. The SANITIZE=leak build fails, and with these two releases the test passes. You can squash this in, or I can do so myself if you like, if this is the only change that is required. diff-no-index.c | 2 ++ 1 file changed, 2 insertions(+) Signed-off-by: Johannes Schindelin <[email protected]>
1 parent 18c819b commit ade1f1c

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

diff-no-index.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -436,6 +436,8 @@ int diff_no_index(struct rev_info *revs, const struct git_hash_algo *algop,
436436
for (i = 0; i < ARRAY_SIZE(to_free); i++)
437437
free(to_free[i]);
438438
strbuf_release(&replacement);
439+
strbuf_release(&ps_match1);
440+
strbuf_release(&ps_match2);
439441
if (ps)
440442
clear_pathspec(ps);
441443
return ret;

0 commit comments

Comments
 (0)