Avoid possible memory leak (src/common/rmtree.c)
Hi,
Per Coverity.
rmtree function can leak 64 bytes per call,
when it can't open a directory.
patch attached.
best regards,
Ranier Vilela
Attachments:
0003-Avoid-possible-memory-leak-64-bytes-per-rmtree-call-.patchapplication/octet-stream; name=0003-Avoid-possible-memory-leak-64-bytes-per-rmtree-call-.patchDownload+2-2
On 25 Jul 2023, at 16:31, Ranier Vilela <ranier.vf@gmail.com> wrote:
rmtree function can leak 64 bytes per call,
when it can't open a directory.
Skimming the tree there doesn't seem to be any callers which aren't exiting or
ereporting on failure so the real-world impact seems low. That being said,
silencing static analyzers could be reason enough to delay allocation.
--
Daniel Gustafsson
On Tue, Jul 25, 2023 at 04:45:22PM +0200, Daniel Gustafsson wrote:
Skimming the tree there doesn't seem to be any callers which aren't exiting or
ereporting on failure so the real-world impact seems low. That being said,
silencing static analyzers could be reason enough to delay allocation.
A different reason would be out-of-core code that uses rmtree() in a
memory context where the leak would be an issue if facing a failure
continuously? Delaying the allocation after the OPENDIR() seems like
a good practice anyway.
--
Michael
Em sex, 28 de jul de 2023 11:54 PM, Michael Paquier <michael@paquier.xyz>
escreveu:
On Tue, Jul 25, 2023 at 04:45:22PM +0200, Daniel Gustafsson wrote:
Skimming the tree there doesn't seem to be any callers which aren't
exiting or
ereporting on failure so the real-world impact seems low. That being
said,
silencing static analyzers could be reason enough to delay allocation.
A different reason would be out-of-core code that uses rmtree() in a
memory context where the leak would be an issue if facing a failure
continuously? Delaying the allocation after the OPENDIR() seems like
a good practice anyway.
Thanks for the commit, Michael.
best regards,
Ranier Vilela