Parent: d83f1d480a15e0229ff47c197e0145a4640e626a
Author: Tedd Ho-Jeong An <hj.tedd.an@gmail.com>
Committer: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Date: 2020-11-24 23:03:46
Tree: 7cbb1726aeb4cdee82a216bb0f46e880a7add9f9
monitor: Fix potential memory leak If the mainloop_add_fd() returns with failure, the destroy callback is never called so any reosurces need to be released never freed/closed. This potential leakage is checked with valgrind after failing the mainloop_add_fd() function manually. ==258684== 1,500 bytes in 1 blocks are definitely lost in loss record 3 of 3 ==258684== at 0x483BB1A: calloc (vg_replace_malloc.c:760) ==258684== by 0x123F1A: open_channel (control.c:1058) ==258684== by 0x125B09: control_tracing (control.c:1540) ==258684== by 0x122764: main (main.c:255) ==258684== ==258684== LEAK SUMMARY: ==258684== definitely lost: 1,500 bytes in 1 blocks ==258684== indirectly lost: 0 bytes in 0 blocks ==258684== possibly lost: 0 bytes in 0 blocks ==258684== still reachable: 48 bytes in 2 blocks ==258684== suppressed: 0 bytes in 0 blocks This patch frees/closes the resources if the function returns with failure.
Diffstat
| M | monitor/control.c | | | 20 | +++++++++++++++++- - - |
| M | monitor/hcidump.c | | | 14 | +++++++++++- - - |
2 files changed, 28 insertions(+), 6 deletions(-)