[babl] extensions: fast-float: add destroy() callback, fix 2 leaks



commit a4bc988ba322a7561a77c7492e7bc2df7f8f3867
Author: Roman Lebedev <lebedev ri gmail com>
Date:   Mon Aug 22 20:24:14 2016 +0300

    extensions: fast-float: add destroy() callback, fix 2 leaks
    
    Fixes these 2 not-so-informative leaks, every test showed them:
    
    =================================================================
    ==27868==ERROR: LeakSanitizer: detected memory leaks
    
    Direct leak of 540276 byte(s) in 1 object(s) allocated from:
        0 0x4cf190 in calloc (/home/lebedevri/src/_GIMP/babl/tests/.libs/nop+0x4cf190)
        1 0x7f9cdd208cbb  (<unknown module>)
        2 0x7f9cdd207cca  (<unknown module>)
        3 0x7f9ce06820d8 in babl_extension_load /home/lebedevri/src/_GIMP/babl/babl/babl-extension.c:221:7
        4 0x7f9ce06819d6 in babl_extension_load_dir 
/home/lebedevri/src/_GIMP/babl/babl/babl-extension.c:263:19
        5 0x7f9ce06813fa in babl_extension_load_dir_list 
/home/lebedevri/src/_GIMP/babl/babl/babl-extension.c:333:17
        6 0x7f9ce0678c84 in babl_init /home/lebedevri/src/_GIMP/babl/babl/babl.c:151:7
        7 0x50504a in main /home/lebedevri/src/_GIMP/babl/tests/nop.c:26:3
        8 0x7f9cdf64e72f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2072f)
    
    Direct leak of 540276 byte(s) in 1 object(s) allocated from:
        0 0x4cf190 in calloc (/home/lebedevri/src/_GIMP/babl/tests/.libs/nop+0x4cf190)
        1 0x7f9cdd208cbb  (<unknown module>)
        2 0x7f9cdd207cf6  (<unknown module>)
        3 0x7f9ce06820d8 in babl_extension_load /home/lebedevri/src/_GIMP/babl/babl/babl-extension.c:221:7
        4 0x7f9ce06819d6 in babl_extension_load_dir 
/home/lebedevri/src/_GIMP/babl/babl/babl-extension.c:263:19
        5 0x7f9ce06813fa in babl_extension_load_dir_list 
/home/lebedevri/src/_GIMP/babl/babl/babl-extension.c:333:17
        6 0x7f9ce0678c84 in babl_init /home/lebedevri/src/_GIMP/babl/babl/babl.c:151:7
        #7 0x50504a in main /home/lebedevri/src/_GIMP/babl/tests/nop.c:26:3
        8 0x7f9cdf64e72f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2072f)
    
    SUMMARY: AddressSanitizer: 1080552 byte(s) leaked in 2 allocation(s).

 extensions/fast-float.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/extensions/fast-float.c b/extensions/fast-float.c
index 04802a9..8148de0 100644
--- a/extensions/fast-float.c
+++ b/extensions/fast-float.c
@@ -469,3 +469,12 @@ init (void)
   return 0;
 }
 
+void destroy (void);
+
+void
+destroy (void)
+{
+  free (fast_rpow);
+  free (fast_pow);
+}
+


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]