diff options
author | Jeff King <peff@peff.net> | 2020-08-14 12:14:14 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2020-08-14 10:52:04 -0700 |
commit | 9101c8ea2db466cce6d7d419d48e0516c6118813 (patch) | |
tree | 60de998ff32bec753314aa306d065369a66bb7c7 /builtin/submodule--helper.c | |
parent | clear_pattern_list(): clear embedded hashmaps (diff) | |
download | tgif-9101c8ea2db466cce6d7d419d48e0516c6118813.tar.xz |
submodule--helper: use strbuf_release() to free strbufs
The prepare_to_clone_next_submodule() function has a few local-variable
strbufs. We use strbuf_reset() throughout the function to reuse the
buffers over and over. But at the end of the function we also use
strbuf_reset() as they go out of scope, which means we end up leaking
their heap buffers. This should be strbuf_release() instead.
These were introduced by 48308681b0 (git submodule update: have a
dedicated helper for cloning, 2016-02-29), but it doesn't seem to have
the same mistake elsewhere. Likewise, I looked for other instances of
the pattern in the submodule--helper file but couldn't find any.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/submodule--helper.c')
-rw-r--r-- | builtin/submodule--helper.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c index a1c75607c7..7f90770596 100644 --- a/builtin/submodule--helper.c +++ b/builtin/submodule--helper.c @@ -1747,8 +1747,8 @@ static int prepare_to_clone_next_submodule(const struct cache_entry *ce, "--no-single-branch"); cleanup: - strbuf_reset(&displaypath_sb); - strbuf_reset(&sb); + strbuf_release(&displaypath_sb); + strbuf_release(&sb); if (need_free_url) free((void*)url); |