Le 07/11/2013 20:22, Pavel Roschin a écrit :
[...]
https://gist.github.com/scriptum/7360333 [...] === LEAKS === ../geany/src/keyfile.c:665: error: Memory leak: tmp_array !NOT SURE. g_ptr_array_add called even for NULL???
Not sure either yet, looks kinda weird indeed.
../geany/src/symbols.c:1093: error: Memory leak: buffer
Yeah, but it's "only" a application-lifetime allocation.
../geany/src/build.c:2416: error: Memory leak: key ../geany/src/build.c:2633: error: Memory leak: key
Fixed.
../geany/src/utils.c:1062: error: Returning/dereferencing 'ioc' after it is deallocated / released !FALSE-POS (NOT SURE)
It is a false positive because g_io_add_watch() adds a reference and it can't be dropped before function exit in a single-threaded application at least.
../geany/src/utils.c:1844: error: Memory leak: tmp
And also str would have been leaked. I removed tmp altogether and made the function avoid that allocation, plus a few other improvements.
../geany/src/utils.c:739: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. ../geany/src/utils.c:743: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'. ../geany/src/utils.c:1018: portability: Non reentrant function 'localtime' called. For threadsafe applications it is recommended to use the reentrant replacement function 'localtime_r'.
OK, but we're definitely not MT-safe :)
../geany/src/document.c:528: error: Memory leak: doc
False positive, the doc pointer is added to the documents array on L525, so it's fine we just get the same one on line 528.
../geany/src/document.c:1546: error: Memory leak: conv_file_contents !FALSE-POS - check pointer, not error?
Yeah we could check conv_file_contents instead of conv_error, although in practice it's probably identical.
== Some funny warnings === [...]
Fixed. Though, it's weird GCC didn't report those with -Wformat=2, weird.
Thanks again! Colomban