Re: [PATCH 20/21] builtin/merge: release outbut buffer after performing merge
- From
Toon Claes <toon@iotcl.com>
- Date
- Oct 18, 2024, 12:03 UTC
- Message-ID
- <877ca5d3dn.fsf@iotcl.com>
- In-Reply-To
- <bc2206aa47e7e8be0642bb4540e7ddec22fbac91.1728624670.git.ps@pks.im>
Patrick Steinhardt <ps@pks.im> writes:
Show 13 quoted lines
> The `obuf` member of `struct merge_options` is used to buffer output in > some cases. In order to not discard its allocated memory we only release > its contents in `merge_finalize()` when we're not currently recursing > into a subtree. > > This results in some situations where we seemingly do not release the > buffer reliably. We thus have calls to `strbuf_release()` for this > buffer scattered across the codebase. But we're missing one callsite in > git-merge(1), which causes a memory leak. > > We should ideally refactor this interface so that callers don't have to > know about any such internals. But for now, paper over the issue by > adding one more `strbuf_release()` call.
Shall we mark this as #leftoverbits?
-- Toon