Re: [PATCH 20/28] http-push: free repo->url string
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Sep 26, 2024, 13:50 UTC
- Message-ID
- <ZvVmoARjOAiAqiIz@pks.im>
- In-Reply-To
- <20240924220446.GT1143820@coredump.intra.peff.net>
On Tue, Sep 24, 2024 at 06:04:46PM -0400, Jeff King wrote:
Show 23 quoted lines
> Our repo->url string comes from str_end_url_with_slash(), which always > allocates its output buffer. We should free it before exiting to avoid > triggering the leak-checker. > > This can be seen by leak-checking t5540. > > Signed-off-by: Jeff King <peff@peff.net> > --- > http-push.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/http-push.c b/http-push.c > index f60b2ceba5..52c53928a9 100644 > --- a/http-push.c > +++ b/http-push.c > @@ -1972,6 +1972,7 @@ int cmd_main(int argc, const char **argv) > cleanup: > if (info_ref_lock) > unlock_remote(info_ref_lock); > + free(repo->url); > free(repo); > > http_cleanup();
I was wondering whether we also need to free `repo->path`, which is a `char *` as well. But that is only being assigned pointers into command line argument strings, and thus we do not have to free it.
Patrick