dlr-gtlab / gtlab-core

GTlab Core Framework
https://www.gtlab.de
Other
7 stars 2 forks source link

Fixed some memory leaks #1138

Closed rainman110 closed 8 months ago

rainman110 commented 8 months ago

Fixes #1137

Description

There were a couple of memleaks in the Gui library and in the main application. Resulting in pretty large leaks.

With these fixes, the leaks are much smaller:

=================================================================
==19087==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 6656 byte(s) in 26 object(s) allocated from:
    #0 0x7f958c0a0330 in __interceptor_malloc (/lib/x86_64-linux-gnu/libasan.so.5+0xe9330)
    #1 0x7f9580a9a6d4  (/lib/x86_64-linux-gnu/libfontconfig.so.1+0x206d4)

Indirect leak of 1632 byte(s) in 51 object(s) allocated from:
    #0 0x7f958c0a0518 in calloc (/lib/x86_64-linux-gnu/libasan.so.5+0xe9518)
    #1 0x7f9580a9ad18  (/lib/x86_64-linux-gnu/libfontconfig.so.1+0x20d18)

Indirect leak of 519 byte(s) in 50 object(s) allocated from:
    #0 0x7f958bff1810 in strdup (/lib/x86_64-linux-gnu/libasan.so.5+0x3a810)
    #1 0x7f9580a99fc4 in FcValueSave (/lib/x86_64-linux-gnu/libfontconfig.so.1+0x1ffc4)

Indirect leak of 56 byte(s) in 1 object(s) allocated from:
    #0 0x7f958c0a0518 in calloc (/lib/x86_64-linux-gnu/libasan.so.5+0xe9518)
    #1 0x7f957cb27ce2  (<unknown module>)

Indirect leak of 56 byte(s) in 1 object(s) allocated from:
    #0 0x7f958c0a0518 in calloc (/lib/x86_64-linux-gnu/libasan.so.5+0xe9518)
    #1 0x7f957cb27ccb  (<unknown module>)

SUMMARY: AddressSanitizer: 8919 byte(s) leaked in 129 allocation(s).

I am not sure, where these remaining leaks are coming from, but I suspect Qt.

How Has This Been Tested?

Checklist:

rainman110 commented 8 months ago

Good catch!

Just using the proper tools to find the python module memleaks actually.