memory leaks

If you are using the main C++ distribution of wxWidgets, Feel free to ask any question related to wxWidgets development here. This means questions regarding to C++ and wxWidgets, not compile problems.
Post Reply
soban
In need of some credit
In need of some credit
Posts: 5
Joined: Wed Dec 14, 2005 2:56 pm
Contact:

memory leaks

Post by soban » Wed Mar 29, 2006 12:05 pm

Hi,

I've got some questions about memory leaks and avilable tools. I have read other related threads here.

add 1]
when I run valgrind (even on sample project), I always get some memory leaks report. It's just normal or it's another speciality of my system configuration?

valgrind command:
valgrind --leak-check=full --logfile=log01 -v program
report:

Code: Select all

==4805== Memcheck, a memory error detector for x86-linux.
==4805== Copyright (C) 2002-2005, and GNU GPL'd, by Julian Seward et al.
==4805== Using valgrind-2.4.0, a program supervision framework for x86-linux.
==4805== Copyright (C) 2000-2005, and GNU GPL'd, by Julian Seward et al.
==4805== 
==4805== My PID = 4805, parent PID = 4578.  Prog and args are:
==4805==    test_deb
==4805== 
==4805== Valgrind library directory: /usr/lib/valgrind
==4805== Command line
==4805==    test_deb
==4805== Startup, with flags:
==4805==    --suppressions=/usr/lib/valgrind/debian-libc6-dbg.supp
==4805==    --leak-check=full
==4805==    --logfile=valgrind_aged_01
==4805==    -v
==4805==    --
==4805== Contents of /proc/version:
==4805==   Linux version 2.6.15.4 ([email protected]) (gcc version 3.3.5 (Debian 1:3.3.5-13)) #4 PREEMPT Sat Mar 18 14:03:41 CET 2006
==4805== Reading syms from /home/soban/Projects/test/test_deb (0x8048000)
==4805== Reading syms from /lib/ld-2.3.6.so (0x1B8E4000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/ld-2.3.6.so...
==4805== ... CRC mismatch (computed B0E4C1C9 wanted 7804F885)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/valgrind/stage2 (0xB0000000)
==4805== Reading syms from /lib/ld-2.3.6.so (0xB1000000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/ld-2.3.6.so...
==4805== ... CRC mismatch (computed B0E4C1C9 wanted 7804F885)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/valgrind/vgskin_memcheck.so (0xB7B69000)
==4805== Reading syms from /lib/tls/libc-2.3.6.so (0xB7DCD000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libc-2.3.6.so...
==4805== ... CRC mismatch (computed D2002F5E wanted A334D03F)
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libdl-2.3.6.so (0xB7F05000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libdl-2.3.6.so...
==4805== ... CRC mismatch (computed E9226EAE wanted 2409D671)
==4805==    object doesn't have any debug info
==4805== Reading suppressions file: /usr/lib/valgrind/debian-libc6-dbg.supp
==4805== Reading suppressions file: /usr/lib/valgrind/default.supp
==4805== 
==4805== Reading syms from /usr/lib/valgrind/vg_inject.so (0x1B900000)
==4805== Reading syms from /usr/lib/valgrind/vgpreload_memcheck.so (0x1B903000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_gtk2d_xrc-2.6.so.0.2.0 (0x1B90D000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_gtk2d_qa-2.6.so.0.2.0 (0x1B971000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_gtk2d_html-2.6.so.0.2.0 (0x1B98C000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_gtk2d_adv-2.6.so.0.2.0 (0x1BA1D000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_gtk2d_core-2.6.so.0.2.0 (0x1BACE000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_based_xml-2.6.so.0.2.0 (0x1BE9B000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_based_net-2.6.so.0.2.0 (0x1BEA7000)
==4805== Reading syms from /home/soban/wxwidgets/wxGTK-2.6.2/build-debug/lib/libwx_based-2.6.so.0.2.0 (0x1BEDA000)
==4805== Reading syms from /usr/lib/libstdc++.so.5.0.7 (0x1C07F000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libm-2.3.6.so (0x1C13A000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libm-2.3.6.so...
==4805== ... CRC mismatch (computed 244B49E7 wanted E9D4BFC9)
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/libgcc_s.so.1 (0x1C163000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libpthread-2.3.6.so (0x1C16F000)
==4805== Reading debug info from /lib/tls/libpthread-2.3.6.so...
==4805== ... CRC mismatch (computed 0C59DE4D wanted ADF70F1D)
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libc-2.3.6.so (0x1C182000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libc-2.3.6.so...
==4805== ... CRC mismatch (computed D2002F5E wanted A334D03F)
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libdl-2.3.6.so (0x1C2BB000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libdl-2.3.6.so...
==4805== ... CRC mismatch (computed E9226EAE wanted 2409D671)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libz.so.1.2.2 (0x1C2C0000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libgtk-x11-2.0.so.0.800.13 (0x1C2D3000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libgtk-x11-2.0.so.0.800.13...
==4805== ... CRC mismatch (computed D5344FBC wanted 97CDFD3A)
==4805== Reading debug info from /usr/lib/debug/usr/lib/libgtk-x11-2.0.so.0.800.13...
==4805== Reading syms from /usr/lib/libgdk-x11-2.0.so.0.800.13 (0x1C5C9000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libgdk-x11-2.0.so.0.800.13...
==4805== ... CRC mismatch (computed 96771FA5 wanted CD6E1ED9)
==4805== Reading debug info from /usr/lib/debug/usr/lib/libgdk-x11-2.0.so.0.800.13...
==4805== Reading syms from /usr/X11R6/lib/libXrandr.so.2.0 (0x1C64B000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/X11R6/lib/libXi.so.6.0 (0x1C650000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/X11R6/lib/libXinerama.so.1.0 (0x1C659000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/X11R6/lib/libXinerama.so.1.0...
==4805== ... CRC mismatch (computed 45D900D5 wanted FF19F3AA)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/X11R6/lib/libXext.so.6.4 (0x1C65D000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libatk-1.0.so.0.1010.3 (0x1C66C000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libatk-1.0.so.0.1010.3...
==4805== ... CRC mismatch (computed 36EE1AE6 wanted C13B3A5F)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libgdk_pixbuf-2.0.so.0.800.13 (0x1C688000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libgdk_pixbuf-2.0.so.0.800.13...
==4805== ... CRC mismatch (computed A15D73E0 wanted 70A7FEDF)
==4805== Reading debug info from /usr/lib/debug/usr/lib/libgdk_pixbuf-2.0.so.0.800.13...
==4805== Reading syms from /usr/lib/libfontconfig.so.1.0.4 (0x1C69F000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libfontconfig.so.1.0.4...
==4805== ... CRC mismatch (computed CFB69E66 wanted AE870FAC)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libXcursor.so.1.0.2 (0x1C6CF000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libpango-1.0.so.0.1003.1 (0x1C6D9000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libXrender.so.1.3.0 (0x1C712000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libXrender.so.1.3.0...
==4805== ... CRC mismatch (computed DF8AAA49 wanted AB4D3587)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/X11R6/lib/libX11.so.6.2 (0x1C71C000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libgobject-2.0.so.0.800.6 (0x1C7E6000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libgobject-2.0.so.0.800.6...
==4805== ... CRC mismatch (computed 6B3AE59C wanted 745FDD84)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libgmodule-2.0.so.0.800.6 (0x1C821000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libgmodule-2.0.so.0.800.6...
==4805== ... CRC mismatch (computed 1FD37A70 wanted 5B640FCA)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libgthread-2.0.so.0.800.6 (0x1C826000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libgthread-2.0.so.0.800.6...
==4805== ... CRC mismatch (computed 58A2C7BB wanted 6217237B)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libglib-2.0.so.0.800.6 (0x1C82B000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/libglib-2.0.so.0.800.6...
==4805== ... CRC mismatch (computed 6110F8E5 wanted 514B1363)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libpng12.so.0.1.2.8 (0x1C8B1000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libjpeg.so.62.0.0 (0x1C8D7000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libexpat.so.1.0.0 (0x1C8F8000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libpangocairo-1.0.so.0.1003.1 (0x1C919000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libcairo.so.2.2.3 (0x1C921000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libfreetype.so.6.3.8 (0x1C96D000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/libpangoft2-1.0.so.0.1003.1 (0x1C9DB000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED363: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E67A7: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED000: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E67A7: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ECEF1: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E680B: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ECEFD: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E680B: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED000: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E680B: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== TRANSLATE: 0x1C1F0260 redirected to 0x1B9077B0
==4805== TRANSLATE: 0x1C1EAD60 redirected to 0x1B906510
==4805== TRANSLATE: 0x1C1E8F90 redirected to 0x1B906A82
==4805== TRANSLATE: 0x1C1EAA10 redirected to 0x1B906EE2
==4805== TRANSLATE: 0x1C1EB2E0 redirected to 0x1B906FA1
==4805== Reading syms from /usr/X11R6/lib/X11/locale/lib/common/xlcDef.so.2 (0x1C06B000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== 
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED363: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C288E99: (within /lib/tls/libc-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C28954A: _dl_open (in /lib/tls/libc-2.3.6.so)
==4805==    by 0x1C2BBD22: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C2BC476: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C2BBDA0: dlopen (in /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C79ABDA: (within /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C79AD3A: _XlcDynamicLoad (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BC08: _XOpenLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BDD2: _XlcCurrentLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805== 
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED000: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C288E99: (within /lib/tls/libc-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C28954A: _dl_open (in /lib/tls/libc-2.3.6.so)
==4805==    by 0x1C2BBD22: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C2BC476: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C2BBDA0: dlopen (in /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C79ABDA: (within /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C79AD3A: _XlcDynamicLoad (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BC08: _XOpenLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BDD2: _XlcCurrentLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805== TRANSLATE: 0x1C1F1420 redirected to 0x1B907C80
==4805== Reading syms from /lib/tls/libnss_compat-2.3.6.so (0x1CC65000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libnss_compat-2.3.6.so...
==4805== ... CRC mismatch (computed 069B346B wanted 6E820B60)
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libnsl-2.3.6.so (0x1CC6F000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libnsl-2.3.6.so...
==4805== ... CRC mismatch (computed 15D9AF2E wanted F830D2F9)
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libnss_nis-2.3.6.so (0x1CC86000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libnss_nis-2.3.6.so...
==4805== ... CRC mismatch (computed 52223410 wanted 470C8162)
==4805==    object doesn't have any debug info
==4805== Reading syms from /lib/tls/libnss_files-2.3.6.so (0x1CC91000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /lib/tls/libnss_files-2.3.6.so...
==4805== ... CRC mismatch (computed C247470B wanted 98A06F9B)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/gconv/ISO8859-1.so (0x1C07B000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/gconv/ISO8859-1.so...
==4805== ... CRC mismatch (computed 3878FD60 wanted 89E7743B)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/gconv/ISO8859-2.so (0x1CC51000)
==4805==    object doesn't have a symbol table
==4805== Reading debug info from /usr/lib/gconv/ISO8859-2.so...
==4805== ... CRC mismatch (computed 6C883297 wanted 009DE6B9)
==4805==    object doesn't have any debug info
==4805== Reading syms from /usr/lib/pango/1.4.0/modules/pango-basic-fc.so (0x1CC56000)
==4805==    object doesn't have a symbol table
==4805==    object doesn't have any debug info
==4805== discard syms at 0x1C07B000-0x1C07E000 in /usr/lib/gconv/ISO8859-1.so due to munmap()
==4805== discard syms at 0x1CC51000-0x1CC55000 in /usr/lib/gconv/ISO8859-2.so due to munmap()
==4805== discard syms at 0x1CC65000-0x1CC6E000 in /lib/tls/libnss_compat-2.3.6.so due to munmap()
==4805== discard syms at 0x1CC86000-0x1CC90000 in /lib/tls/libnss_nis-2.3.6.so due to munmap()
==4805== discard syms at 0x1CC6F000-0x1CC85000 in /lib/tls/libnsl-2.3.6.so due to munmap()
==4805== discard syms at 0x1CC91000-0x1CC9D000 in /lib/tls/libnss_files-2.3.6.so due to munmap()
==4805== 
==4805== ERROR SUMMARY: 103 errors from 7 contexts (suppressed: 16 from 3)
==4805== 
==4805== 1 errors in context 1 of 7:
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED000: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E680B: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== 1 errors in context 2 of 7:
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ECEFD: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E680B: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== 1 errors in context 3 of 7:
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ECEF1: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E680B: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== 8 errors in context 4 of 7:
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED000: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C288E99: (within /lib/tls/libc-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C28954A: _dl_open (in /lib/tls/libc-2.3.6.so)
==4805==    by 0x1C2BBD22: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C2BC476: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C2BBDA0: dlopen (in /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C79ABDA: (within /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C79AD3A: _XlcDynamicLoad (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BC08: _XOpenLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BDD2: _XlcCurrentLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805== 
==4805== 8 errors in context 5 of 7:
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED363: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C288E99: (within /lib/tls/libc-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C28954A: _dl_open (in /lib/tls/libc-2.3.6.so)
==4805==    by 0x1C2BBD22: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1B8EFAAE: (within /lib/ld-2.3.6.so)
==4805==    by 0x1C2BC476: (within /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C2BBDA0: dlopen (in /lib/tls/libdl-2.3.6.so)
==4805==    by 0x1C79ABDA: (within /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C79AD3A: _XlcDynamicLoad (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BC08: _XOpenLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805==    by 0x1C76BDD2: _XlcCurrentLC (in /usr/X11R6/lib/libX11.so.6.2)
==4805== 
==4805== 42 errors in context 6 of 7:
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED000: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E67A7: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
==4805== 
==4805== 42 errors in context 7 of 7:
==4805== Conditional jump or move depends on uninitialised value(s)
==4805==    at 0x1B8ED363: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E67A7: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8F3A40: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E79CA: (within /lib/ld-2.3.6.so)
==4805==    by 0x1B8E47C6: (within /lib/ld-2.3.6.so)
--4805-- 
--4805-- supp:    3 Xorg 6.8.1 writev uninit padding
--4805-- supp:   11 Xorg 6.8.1 uninit _write* padding
--4805-- supp:    2 Unterminated strstr string in is_smp_system() (NPTL)
==4805== 
==4805== IN SUMMARY: 103 errors from 7 contexts (suppressed: 16 from 3)
==4805== 
==4805== malloc/free: in use at exit: 432703 bytes in 6567 blocks.
==4805== malloc/free: 98271 allocs, 91704 frees, 6309866 bytes allocated.
==4805== 
==4805== searching for pointers to 6567 not-freed blocks.
==4805== checked 1183236 bytes.
==4805== 
==4805== 
==4805== 31 bytes in 1 blocks are definitely lost in loss record 37 of 159
==4805==    at 0x1B90659D: malloc (vg_replace_malloc.c:130)
==4805==    by 0x1C01B928: wxSetEnv(wxString const&, char const*) (utilsunx.cpp:996)
==4805==    by 0x1BC13397: wxApp::Initialize(int&, char**) (app.cpp:632)
==4805==    by 0x1BFA6386: wxEntryStart(int&, char**) (init.cpp:280)
==4805==    by 0x1BFA6630: wxEntry(int&, char**) (init.cpp:404)
==4805==    by 0x804E8DD: main (min.cpp:35)
==4805== 
==4805== 
==4805== 156 (36 direct, 120 indirect) bytes in 1 blocks are definitely lost in loss record 63 of 159
==4805==    at 0x1B90659D: malloc (vg_replace_malloc.c:130)
==4805==    by 0x1C2655E9: (within /lib/tls/libc-2.3.6.so)
==4805==    by 0x1C265C29: __nss_database_lookup (in /lib/tls/libc-2.3.6.so)
==4805==    by 0x1CC670F9: ???
==4805==    by 0x1CC67DAC: ???
==4805==    by 0x1C213212: getpwuid_r (in /lib/tls/libc-2.3.6.so)
==4805==    by 0x1C8780FA: (within /usr/lib/libglib-2.0.so.0.800.6)
==4805==    by 0x1C879A35: g_get_home_dir (in /usr/lib/libglib-2.0.so.0.800.6)
==4805==    by 0x1C43A655: ??? (gtkrc.c:441)
==4805==    by 0x1C43F00B: _gtk_rc_init (gtkrc.c:670)
==4805==    by 0x1C3FE34F: ??? (gtkmain.c:512)
==4805==    by 0x1C85E8CC: g_option_context_parse (in /usr/lib/libglib-2.0.so.0.800.6)
==4805== 
==4805== 
==4805== 800 bytes in 20 blocks are possibly lost in loss record 121 of 159
==4805==    at 0x1B906F75: calloc (vg_replace_malloc.c:175)
==4805==    by 0x1C857BA2: g_malloc0 (in /usr/lib/libglib-2.0.so.0.800.6)
==4805==    by 0x1C80722B: (within /usr/lib/libgobject-2.0.so.0.800.6)
==4805==    by 0x1C808F74: (within /usr/lib/libgobject-2.0.so.0.800.6)
==4805==    by 0x1C80917F: g_type_init_with_debug_flags (in /usr/lib/libgobject-2.0.so.0.800.6)
==4805==    by 0x1C8092F1: g_type_init (in /usr/lib/libgobject-2.0.so.0.800.6)
==4805==    by 0x1C5DDA87: gdk_pre_parse_libgtk_only (gdk.c:173)
==4805==    by 0x1C3FE1F0: ??? (gtkmain.c:443)
==4805==    by 0x1C85E7B0: g_option_context_parse (in /usr/lib/libglib-2.0.so.0.800.6)
==4805==    by 0x1C3FE671: gtk_parse_args (gtkmain.c:693)
==4805==    by 0x1C3FE6F3: gtk_init_check (gtkmain.c:729)
==4805==    by 0x1BC1342A: wxApp::Initialize(int&, char**) (app.cpp:687)
==4805== 
==4805== LEAK SUMMARY:
==4805==    definitely lost: 67 bytes in 2 blocks.
==4805==    indirectly lost: 120 bytes in 10 blocks.
==4805==      possibly lost: 800 bytes in 20 blocks.
==4805==    still reachable: 431716 bytes in 6535 blocks.
==4805==         suppressed: 0 bytes in 0 blocks.
==4805== Reachable blocks (those to which a pointer was found) are not shown.
==4805== To see them, rerun with: --show-reachable=yes
--4805--     TT/TC: 0 tc sectors discarded.
--4805--            134370 tt_fast misses.
--4805-- translate: new     73754 (1175842 -> 16009444; ratio 136:10)
--4805--            discard 357 (4549 -> 68272; ratio 150:10).
--4805-- chainings: 51485 chainings, 0 unchainings.
--4805--  dispatch: 82955017 jumps (bb entries); of them 13445970 (16%) unchained.
--4805--            1660/307812 major/minor sched events.
--4805-- reg-alloc: 12170 t-req-spill, 2802297+85611 orig+spill uis,
--4805--            374106 total-reg-rank
--4805--    sanity: 1661 cheap, 67 expensive checks.
--4805--    ccalls: 317465 C calls, 57% saves+restores avoided (1072060 bytes)
--4805--            438661 args, avg 0.89 setup instrs each (91870 bytes)
--4805--            0% clear the stack (951882 bytes)
--4805--            106132 retvals, 32% of reg-reg movs avoided (66730 bytes)
What's wrong??

Here is the sample's code, it's from the book Cross-Platform GUI Programming with wxWidgets:

Code: Select all

// Name:        minimal.cpp
// Purpose:     Minimal wxWidgets sample
// Author:      Julian Smart

#include "wx/wx.h"

// Declare the application class
class MyApp : public wxApp
{
public:
    // Called on application startup
    virtual bool OnInit();
};

// Declare our main frame class
class MyFrame : public wxFrame
{
public:
    // Constructor
    MyFrame(const wxString& title);

    // Event handlers
    void OnQuit(wxCommandEvent& event);
    void OnAbout(wxCommandEvent& event);

private:
    // This class handles events
    DECLARE_EVENT_TABLE()
};

// Implements MyApp& GetApp()
DECLARE_APP(MyApp)

// Give wxWidgets the means to create a MyApp object
IMPLEMENT_APP(MyApp)

// Initialize the application
bool MyApp::OnInit()
{
    // Create the main application window
    MyFrame *frame = new MyFrame(wxT("Minimal wxWidgets App"));

    // Show it
    frame->Show(true);

    // Start the event loop
    return true;
}

// Event table for MyFrame
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
    EVT_MENU(wxID_ABOUT, MyFrame::OnAbout)
    EVT_MENU(wxID_EXIT,  MyFrame::OnQuit)
END_EVENT_TABLE()

void MyFrame::OnAbout(wxCommandEvent& event)
{
    wxString msg;
    msg.Printf(wxT("Hello and welcome to %s"),  
               wxVERSION_STRING);

    wxMessageBox(msg, wxT("About Minimal"),
                 wxOK | wxICON_INFORMATION, this);
}

void MyFrame::OnQuit(wxCommandEvent& event)
{
    // Destroy the frame
    Close();
}

//#include "mondrian.xpm"

MyFrame::MyFrame(const wxString& title)
       : wxFrame(NULL, wxID_ANY, title)
{
    // Set the frame icon
   //SetIcon(wxIcon(mondrian_xpm));

    // Create a menu bar
    wxMenu *fileMenu = new wxMenu;

    // The "About" item should be in the help menu
    wxMenu *helpMenu = new wxMenu;
    helpMenu->Append(wxID_ABOUT, wxT("&About...\tF1"),
                     wxT("Show about dialog"));

    fileMenu->Append(wxID_EXIT, wxT("E&xit\tAlt-X"),
                     wxT("Quit this program"));

    // Now append the freshly created menu to the menu bar...
    wxMenuBar *menuBar = new wxMenuBar();
    menuBar->Append(fileMenu, wxT("&File"));
    menuBar->Append(helpMenu, wxT("&Help"));

    // ... and attach this menu bar to the frame
    SetMenuBar(menuBar);

    // Create a status bar just for fun
    CreateStatusBar(2);
    SetStatusText(wxT("Welcome to wxWidgets!"));
}
When I add eg. file dialog, the memory loss increase to:

Code: Select all

LEAK SUMMARY:
==5225==    definitely lost: 112 bytes in 5 blocks.
==5225==    indirectly lost: 200 bytes in 14 blocks.
==5225==      possibly lost: 1791 bytes in 54 blocks.
==5225==    still reachable: 1205628 bytes in 26252 blocks.
==5225==         suppressed: 0 bytes in 0 blocks.
add 2]
Is it sufficing, when I use for memory-leak-checks debug build of WX with these options:
--enable-debug --enable-mem_tracing ??
For "normal" memory leaks it works fine. Or do I have to use other tools, like valgrind etc.? I'm just confused by valgrind reports I wrote above...

Thx for help

soban

Debian Sarge /stable+testing/
wxGTK 2.6.2
gcc version 3.3.6 (Debian 1:3.3.6-10)
...I have to learn a lot about Linux and wxWidgets...
running Debian Sarge on IBM ThinkPad R50e PM1,6, trying to develop one crossplatform app for documentation management

smf
Knows some wx things
Knows some wx things
Posts: 32
Joined: Wed Nov 12, 2008 7:04 pm

Re: memory leaks

Post by smf » Fri Mar 20, 2009 11:12 am

Sorry for awakening this zombi thread... (it is from 2006, jesus...)

Yes, I can see the same with valgrind. I suppose it is some errors inside wx-mem-management. But, I am not sure, though. So, anyone who could clarify this strange thing any further?

cu
Stefan

computerquip
Experienced Solver
Experienced Solver
Posts: 72
Joined: Fri Feb 20, 2009 7:13 pm
Location: $(#wx)\src

Re: memory leaks

Post by computerquip » Fri Mar 20, 2009 11:59 am

smf wrote:Sorry for awakening this zombi thread... (it is from 2006, jesus...)

Yes, I can see the same with valgrind. I suppose it is some errors inside wx-mem-management. But, I am not sure, though. So, anyone who could clarify this strange thing any further?

cu
Stefan
This was from three years ago. I'm sure wxWidgets has improved and changed immensely over that amount of time.

JimFairway
wxWorld Domination!
wxWorld Domination!
Posts: 1059
Joined: Sun Dec 30, 2007 6:40 pm
Location: Canada

Post by JimFairway » Fri Mar 20, 2009 12:12 pm

Hi,

Also, why would you awaken a thread that you can't close?
Now the zombie continues to walk :lol: !

Jim
OS: Vista SP1, wxWidgets 2.8.7.

orbitcowboy
I live to help wx-kind
I live to help wx-kind
Posts: 178
Joined: Mon Jul 23, 2007 9:01 am

Post by orbitcowboy » Fri Mar 20, 2009 1:42 pm

A good tool to detect memory leaks and other issues in your programming code is cppcheck

https://sourceforge.net/projects/cppcheck/

Best regards

Orbitcowboy
OS: Ubuntu 9.04 (32/64-Bit), Debian Lenny (32-Bit)
Compiler: gcc/g++-4.3.3 , gcc/g++-4.4.0
wxWidgets: 2.8.10,2.9.0

smf
Knows some wx things
Knows some wx things
Posts: 32
Joined: Wed Nov 12, 2008 7:04 pm

Re: memory leaks

Post by smf » Sat Mar 21, 2009 10:49 am

computerquip wrote:This was from three years ago. I'm sure wxWidgets has improved and changed immensely over that amount of time.
I am sure that wx has improved a lot since then, too. But these memory-leaks I see, do come right out of wxwidgets, not out of my source. I can see these leaks even with any of the sample-programs, so I am pretty sure this is something which is going wrong directly in wxwidgets.

cu
Stefan

smf
Knows some wx things
Knows some wx things
Posts: 32
Joined: Wed Nov 12, 2008 7:04 pm

Post by smf » Sat Mar 21, 2009 10:59 am

orbitcowboy wrote:A good tool to detect memory leaks and other issues in your programming code is cppcheck

https://sourceforge.net/projects/cppcheck/

Best regards

Orbitcowboy
I know. But I am not speaking of memory-leaks in my code...

I speak of memory-leaks which happen directly inside the wxwidgets-libraries. Despite that, I regard valgrind being as good (if not better) than cppcheck, as it does dynamic leak-checking by use of a rather secure virtual-machine instead of static code-analysis. If valgrind says there is a memory-leak then it is very, very unlikely that there is none...

a) valgrind says it is not in my code
b) valgrind finds these leaks for any sample-code, I have testet it with.
c) cppcheck doesn't moan about my code, too.

So, really, this is _inside_ wx. And well, I believe it should be fixed. Memory-leaks are allways (for various reasons) a very bad thing.

I nontheless love wxwidgets... btw...

cu
Stefan

smf
Knows some wx things
Knows some wx things
Posts: 32
Joined: Wed Nov 12, 2008 7:04 pm

Post by smf » Sat Mar 21, 2009 11:13 am

OK, to make it more clear of what I am speaking here. Here is the output of valgrind checking against the listbox-sample (OK, some of the errors do not originate from wx but most however directly or indirectly do...):

$ valgrind --leak-check=full --show-reachable=yes ./listbox

==7290== Memcheck, a memory error detector.
==7290== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==7290== Using LibVEX rev 1854, a library for dynamic binary translation.
==7290== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==7290== Using valgrind-3.3.1-Debian, a dynamic binary instrumentation framework.
==7290== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==7290== For more details, rerun with: -v
==7290==
==7290==
==7290== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 249 from 2)
==7290== malloc/free: in use at exit: 3,658,053 bytes in 41,206 blocks.
==7290== malloc/free: 248,058 allocs, 206,852 frees, 53,231,621 bytes allocated.
==7290== For counts of detected errors, rerun with: -v
==7290== searching for pointers to 41,206 not-freed blocks.
==7290== checked 3,936,416 bytes.
==7290==
==7290== 1 bytes in 1 blocks are still reachable in loss record 1 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F8F8BA: _XlcDefaultMapModifiers (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F93E: XSetLocaleModifiers (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8E095: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 4 bytes in 1 blocks are still reachable in loss record 2 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F76766: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F771DA: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F77886: XrmGetStringDatabase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F543B9: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F545AE: XGetDefault (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x50D4313: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7B2F1: gdk_cursor_new_for_display (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 6 bytes in 1 blocks are still reachable in loss record 3 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50D3EED: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7B2F1: gdk_cursor_new_for_display (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B56A49: gdk_cursor_new (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x41695D7: wxCursor::wxCursor(int) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x4249E9D: wxStockGDI::GetCursor(wxStockGDI::Item) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x418B243: wxWindow::Init() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x418E8E0: wxWindow::wxWindow() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290==
==7290==
==7290== 6 bytes in 1 blocks are still reachable in loss record 4 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50D3ECC: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7B2F1: gdk_cursor_new_for_display (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B56A49: gdk_cursor_new (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x41695D7: wxCursor::wxCursor(int) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x4249E9D: wxStockGDI::GetCursor(wxStockGDI::Item) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x418B243: wxWindow::Init() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x418E8E0: wxWindow::wxWindow() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290==
==7290==
==7290== 6 bytes in 1 blocks are still reachable in loss record 5 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F88991: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D52: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 6 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4C8359D: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F3EC: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489E2AA: gtk_icon_theme_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 7 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4C7FE8D: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F3E1: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489E2AA: gtk_icon_theme_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 8 of 188
==7290== at 0x4023DE2: calloc (vg_replace_malloc.c:397)
==7290== by 0x4C827F5: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F3D6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489E2AA: gtk_icon_theme_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 9 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F8E004: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8182B: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F81CB5: _XlcOpenConverter (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F88D79: _XrmDefaultInitParseInfo (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F434: _XrmInitParseInfo (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F756D0: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F77857: XrmGetStringDatabase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F543B9: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F545AE: XGetDefault (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x50D4313: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 10 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F88D51: _XrmDefaultInitParseInfo (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F434: _XrmInitParseInfo (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F756D0: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F77857: XrmGetStringDatabase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F543B9: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F545AE: XGetDefault (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x50D4313: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 11 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50C3555: _XiGetExtensionVersion (in /usr/lib/libXi.so.6.0.0)
==7290== by 0x50C589D: _XiCheckExtInit (in /usr/lib/libXi.so.6.0.0)
==7290== by 0x50C41C9: XListInputDevices (in /usr/lib/libXi.so.6.0.0)
==7290== by 0x4BA525B: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4BA61DB: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B7C83A: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 12 of 188
==7290== at 0x4023DE2: calloc (vg_replace_malloc.c:397)
==7290== by 0x4F784AB: _XCBInitDisplayLock (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F60044: XOpenDisplay (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C391: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 8 bytes in 1 blocks are still reachable in loss record 13 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x516B51D: (within /usr/lib/libxcb.so.1.0.0)
==7290== by 0x516A449: (within /usr/lib/libxcb.so.1.0.0)
==7290== by 0x51692CD: xcb_connect_to_fd (in /usr/lib/libxcb.so.1.0.0)
==7290== by 0x516BCBE: xcb_connect (in /usr/lib/libxcb.so.1.0.0)
==7290== by 0x4F7884A: _XConnectXCB (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F5FDCE: XOpenDisplay (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C391: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 14 of 188
==7290== at 0x4025E4C: realloc (vg_replace_malloc.c:429)
==7290== by 0x4C7EB51: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7E909: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F415: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 15 of 188
==7290== at 0x4023DE2: calloc (vg_replace_malloc.c:397)
==7290== by 0x4C81D65: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F3CB: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489E2AA: gtk_icon_theme_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 16 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4D50BE2: FcBlanksCreate (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D699D4: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x50FCEC3: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50FDC10: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50FF5EE: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50FFCE6: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50F668B: XML_ParseBuffer (in /usr/lib/libexpat.so.1.5.2)
==7290== by 0x4D67F1D: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5D3D1: FcInitLoadConfig (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5D4EB: FcInitLoadConfigAndFonts (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5D5FC: FcInit (in /usr/lib/libfontconfig.so.1.3.0)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 17 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x5082563: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x5082725: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x5082A2B: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x50832E1: cairo_ft_font_face_create_for_pattern (in /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x4F32D1F: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4F2F44B: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4F32E6F: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4BEE1DF: pango_fc_font_lock_face (in /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290== by 0x66F1DEA: (within /usr/lib/pango/1.6.0/modules/pango-basic-fc.so)
==7290== by 0x4CAAFB9: (within /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CBE2F9: pango_shape (in /usr/lib/libpango-1.0.so.0.2202.0)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 18 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50B261D: XextCreateExtension (in /usr/lib/libXext.so.6.4.0)
==7290== by 0x50C5946: XInput_find_display (in /usr/lib/libXi.so.6.0.0)
==7290== by 0x50C419E: XListInputDevices (in /usr/lib/libXi.so.6.0.0)
==7290== by 0x4BA525B: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4BA61DB: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B7C83A: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 19 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F71A63: XAddConnectionWatch (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C3DE: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 20 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F8F333: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 21 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F8852C: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 12 bytes in 1 blocks are still reachable in loss record 22 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F85825: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884C9: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 16 bytes in 2 blocks are still reachable in loss record 23 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4C823CD: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F3F7: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489E2AA: gtk_icon_theme_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 16 bytes in 1 blocks are still reachable in loss record 24 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F765CE: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F771DA: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F77886: XrmGetStringDatabase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F543B9: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F545AE: XGetDefault (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x50D4313: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7B2F1: gdk_cursor_new_for_display (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 16 bytes in 1 blocks are still reachable in loss record 25 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F7569E: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F77857: XrmGetStringDatabase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F543B9: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F545AE: XGetDefault (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x50D4313: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7B2F1: gdk_cursor_new_for_display (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B56A49: gdk_cursor_new (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 16 bytes in 1 blocks are still reachable in loss record 26 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50BB066: XRenderFindDisplay (in /usr/lib/libXrender.so.1.3.0)
==7290== by 0x50BC01C: XRenderQueryExtension (in /usr/lib/libXrender.so.1.3.0)
==7290== by 0x50D3E31: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7B2F1: gdk_cursor_new_for_display (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B56A49: gdk_cursor_new (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x41695D7: wxCursor::wxCursor(int) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x4249E9D: wxStockGDI::GetCursor(wxStockGDI::Item) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290==
==7290==
==7290== 16 bytes in 4 blocks are still reachable in loss record 27 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F86C25: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D5F: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 28 of 188
==7290== at 0x4023DE2: calloc (vg_replace_malloc.c:397)
==7290== by 0x4C819C6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C81AFE: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C81CEF: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7EBFC: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7E9D0: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F415: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 29 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50425BE: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x505A1D9: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x5084F6E: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x50855A2: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x5059BBE: cairo_scaled_font_create (in /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x4F2F472: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4F32E6F: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4BEE1DF: pango_fc_font_lock_face (in /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290== by 0x66F1DEA: (within /usr/lib/pango/1.6.0/modules/pango-basic-fc.so)
==7290== by 0x4CAAFB9: (within /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CBE2F9: pango_shape (in /usr/lib/libpango-1.0.so.0.2202.0)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 30 of 188
==7290== at 0x4023DE2: calloc (vg_replace_malloc.c:397)
==7290== by 0x47A0085: (within /lib/tls/i686/cmov/libdl-2.8.90.so)
==7290== by 0x479FB20: dlopen (in /lib/tls/i686/cmov/libdl-2.8.90.so)
==7290== by 0x446D570: wxDynamicLibrary::RawLoad(wxString const&, int) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x43FF7B6: wxDynamicLibrary::Load(wxString const&, int) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x41ED46D: wxGnomePrintLibrary::wxGnomePrintLibrary() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x41ED5DF: wxGnomePrintModule::OnInit() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x44332FF: wxModule::DoInitializeModule(wxModule*, wxModuleList&) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x44334E4: wxModule::InitializeModules() (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441F8D1: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 31 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x502AA3E: XDamageFindDisplay (in /usr/lib/libXdamage.so.1.1.0)
==7290== by 0x502B01C: XDamageQueryExtension (in /usr/lib/libXdamage.so.1.1.0)
==7290== by 0x4B7C5F1: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 32 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x5026B64: XCompositeFindDisplay (in /usr/lib/libXcomposite.so.1.0.0)
==7290== by 0x502742C: XCompositeQueryExtension (in /usr/lib/libXcomposite.so.1.0.0)
==7290== by 0x4B7C5C0: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 33 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x502FC36: XFixesFindDisplay (in /usr/lib/libXfixes.so.3.1.0)
==7290== by 0x502FEFC: XFixesQueryExtension (in /usr/lib/libXfixes.so.3.1.0)
==7290== by 0x4B7C58F: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 34 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50CA3D5: (within /usr/lib/libXrandr.so.2.1.0)
==7290== by 0x50CA840: XRRQueryExtension (in /usr/lib/libXrandr.so.2.1.0)
==7290== by 0x4B7C40F: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 20 bytes in 1 blocks are still reachable in loss record 35 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F8398E: _XlcCreateLocaleDataBase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F88838: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D52: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 21 bytes in 1 blocks are still reachable in loss record 36 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F6020E: XOpenDisplay (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C391: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 24 bytes in 2 blocks are still reachable in loss record 37 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4C813D1: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7EB1F: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7E909: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F415: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 24 bytes in 1 blocks are still reachable in loss record 38 of 188
==7290== at 0x4025E4C: realloc (vg_replace_malloc.c:429)
==7290== by 0x4F84D1C: _XlcResolveLocaleName (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F887DC: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D52: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 28 bytes in 1 blocks are still reachable in loss record 39 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4D5E362: FcLangSetCreate (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5E46F: FcLangSetCopy (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D641FA: FcValueSave (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D642EE: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D64A2B: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D6098D: FcFontRenderPrepare (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4BF0EBA: (within /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290== by 0x4CAB539: pango_font_map_load_fontset (in /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CA917B: (within /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CA965E: pango_itemize_with_base_dir (in /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CB2288: (within /usr/lib/libpango-1.0.so.0.2202.0)
==7290==
==7290==
==7290== 28 bytes in 1 blocks are still reachable in loss record 40 of 188
==7290== at 0x4025E4C: realloc (vg_replace_malloc.c:429)
==7290== by 0x4F85794: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F86468: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D5F: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 29 bytes in 3 blocks are still reachable in loss record 41 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F811BF: _XlcAddCT (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F812F8: _XlcInitCTInfo (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F886B7: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D52: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 32 bytes in 2 blocks are still reachable in loss record 42 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4CDCDED: FT_New_Memory (in /usr/lib/libfreetype.so.6.3.18)
==7290== by 0x4CDD1E3: FT_Init_FreeType (in /usr/lib/libfreetype.so.6.3.18)
==7290== by 0x4F3338B: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4DA61C2: g_type_create_instance (in /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4D8A3D4: (within /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4D8AC05: g_object_newv (in /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4D8B7D6: g_object_new_valist (in /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4D8B94D: g_object_new (in /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4F3047B: pango_cairo_font_map_new (in /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4F304BC: pango_cairo_font_map_get_default (in /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4B5F16C: gdk_pango_context_get_for_screen (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 32 bytes in 1 blocks are still reachable in loss record 43 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x516ACB7: (within /usr/lib/libxcb.so.1.0.0)
==7290== by 0x5168ECD: (within /usr/lib/libxcb.so.1.0.0)
==7290== by 0x516A861: xcb_wait_for_reply (in /usr/lib/libxcb.so.1.0.0)
==7290== by 0x517549A: xcb_query_extension_reply (in /usr/lib/libxcb.so.1.0.0)
==7290== by 0x516B20C: xcb_get_extension_data (in /usr/lib/libxcb.so.1.0.0)
==7290== by 0x5169879: xcb_prefetch_maximum_request_length (in /usr/lib/libxcb.so.1.0.0)
==7290== by 0x5169915: xcb_get_maximum_request_length (in /usr/lib/libxcb.so.1.0.0)
==7290== by 0x4F605D3: XOpenDisplay (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C391: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 32 bytes in 1 blocks are still reachable in loss record 44 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F65AD0: _XrmInternalStringToQuark (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F65CA6: XrmStringToQuark (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8148C: _XlcGetCharSet (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F80F4E: _XlcAddCT (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F812F8: _XlcInitCTInfo (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F886B7: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D52: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290==
==7290==
==7290== 36 bytes in 3 blocks are still reachable in loss record 45 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4D5CFF2: FcFontSetCreate (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D55663: FcConfigCreate (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5D3B3: FcInitLoadConfig (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5D4EB: FcInitLoadConfigAndFonts (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5D5FC: FcInit (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D5459E: FcConfigGetCurrent (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D54D44: FcConfigSubstituteWithPat (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D54D86: FcConfigSubstitute (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4F332E7: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4BEEBA4: (within /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290== by 0x4BF0D8D: (within /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290==
==7290==
==7290== 36 bytes in 1 blocks are still reachable in loss record 46 of 188
==7290== at 0x4023DE2: calloc (vg_replace_malloc.c:397)
==7290== by 0x4F600F2: XOpenDisplay (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C391: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 40 bytes in 3 blocks are still reachable in loss record 47 of 188
==7290== at 0x4025E4C: realloc (vg_replace_malloc.c:429)
==7290== by 0x4F86A10: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D5F: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290==
==7290==
==7290== 52 bytes in 3 blocks are still reachable in loss record 48 of 188
==7290== at 0x4025E4C: realloc (vg_replace_malloc.c:429)
==7290== by 0x4F82410: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F82EFB: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F83197: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F837BC: _XlcCreateLocaleDataBase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F88838: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F87D52: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884E7: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290==
==7290==
==7290== 84 bytes in 1 blocks are still reachable in loss record 49 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F85873: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884C9: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 96 bytes in 1 blocks are still reachable in loss record 50 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F85852: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F884C9: _XlcCreateLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4FABAE9: _XlcUtf8Loader (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F321: _XOpenLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F462: _XlcCurrentLC (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F726: XSupportsLocale (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8DFF2: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290==
==7290==
==7290== 156 (36 direct, 120 indirect) bytes in 1 blocks are definitely lost in loss record 51 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x471EDC0: (within /lib/tls/i686/cmov/libc-2.8.90.so)
==7290== by 0x471F6F5: __nss_database_lookup (in /lib/tls/i686/cmov/libc-2.8.90.so)
==7290== by 0x57EEF5B: ???
==7290== by 0x57EFCBE: ???
==7290== by 0x46C5CB1: getpwnam_r (in /lib/tls/i686/cmov/libc-2.8.90.so)
==7290== by 0x4E3A765: (within /usr/lib/libglib-2.0.so.0.1800.2)
==7290== by 0x4E3C25C: g_get_home_dir (in /usr/lib/libglib-2.0.so.0.1800.2)
==7290== by 0x4915537: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4917F0A: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x48CABE4: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4E1483C: g_option_context_parse (in /usr/lib/libglib-2.0.so.0.1800.2)
==7290==
==7290==
==7290== 38 bytes in 1 blocks are still reachable in loss record 52 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4C7EC19: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7E9D0: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F415: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 38 bytes in 1 blocks are still reachable in loss record 53 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4C7EE32: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7E9D0: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F415: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C7F796: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C40C00: g_content_type_guess (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C774ED: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C781F6: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C73CB4: (within /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x4C4C245: g_file_query_info (in /usr/lib/libgio-2.0.so.0.1800.2)
==7290== by 0x489B540: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x489BE70: gtk_icon_info_load_icon (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 40 bytes in 2 blocks are still reachable in loss record 54 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x50C4860: XOpenDevice (in /usr/lib/libXi.so.6.0.0)
==7290== by 0x4BA563A: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4BA61DB: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B7C83A: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 40 bytes in 1 blocks are still reachable in loss record 55 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F70425: _XPollfdCacheInit (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F60055: XOpenDisplay (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C391: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 40 bytes in 5 blocks are indirectly lost in loss record 56 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x471E8DB: __nss_lookup_function (in /lib/tls/i686/cmov/libc-2.8.90.so)
==7290== by 0x57EEF7B: ???
==7290== by 0x57EFCBE: ???
==7290== by 0x46C5CB1: getpwnam_r (in /lib/tls/i686/cmov/libc-2.8.90.so)
==7290== by 0x4E3A765: (within /usr/lib/libglib-2.0.so.0.1800.2)
==7290== by 0x4E3C25C: g_get_home_dir (in /usr/lib/libglib-2.0.so.0.1800.2)
==7290== by 0x4915537: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4917F0A: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x48CABE4: (within /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4E1483C: g_option_context_parse (in /usr/lib/libglib-2.0.so.0.1800.2)
==7290== by 0x48CA871: gtk_parse_args (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 43 bytes in 1 blocks are still reachable in loss record 57 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F78717: _XConnectXCB (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F5FDCE: XOpenDisplay (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7C391: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 48 bytes in 1 blocks are still reachable in loss record 58 of 188
==7290== at 0x4025E4C: realloc (vg_replace_malloc.c:429)
==7290== by 0x4F76524: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F771DA: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F77886: XrmGetStringDatabase (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F543B9: (within /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F545AE: XGetDefault (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x50D4313: _XcursorGetDisplayInfo (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D454C: XcursorSupportsARGB (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x50D6FBC: XcursorTryShapeCursor (in /usr/lib/libXcursor.so.1.0.2)
==7290== by 0x4F4DBEE: XCreateGlyphCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F4E338: XCreateFontCursor (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B7B2F1: gdk_cursor_new_for_display (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290==
==7290==
==7290== 48 bytes in 1 blocks are still reachable in loss record 59 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4BA3C5E: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B89884: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B7C4A3: gdk_display_open (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B557B4: gdk_display_open_default_libgtk_only (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA8FE: gtk_init_check (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160E31: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 48 bytes in 4 blocks are still reachable in loss record 60 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4D61E6C: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D61EEE: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D631D2: FcPatternGetString (in /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4BEEF61: pango_fc_font_description_from_pattern (in /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290== by 0x4BEE72A: (within /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290== by 0x4D8A4C0: (within /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4D8AC05: g_object_newv (in /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4D8B801: g_object_new_valist (in /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4D8B94D: g_object_new (in /usr/lib/libgobject-2.0.so.0.1800.2)
==7290== by 0x4F32B02: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4F33171: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290==
==7290==
==7290== 60 bytes in 1 blocks are still reachable in loss record 61 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F792D6: _XReply (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F6C666: XSync (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B866D4: gdk_flush (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA31B: gtk_main (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x417AE94: wxEventLoop::Run() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x42115CD: wxAppBase::MainLoop() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x42111A0: wxAppBase::OnRun() (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441FA79: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
==7290==
==7290==
==7290== 60 bytes in 3 blocks are still reachable in loss record 62 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x5048102: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x5059433: (within /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x5059A3B: cairo_scaled_font_create (in /usr/lib/libcairo.so.2.10800.0)
==7290== by 0x4F2F472: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4F32E6F: (within /usr/lib/libpangocairo-1.0.so.0.2202.0)
==7290== by 0x4BEE1DF: pango_fc_font_lock_face (in /usr/lib/libpangoft2-1.0.so.0.2202.0)
==7290== by 0x66F1DEA: (within /usr/lib/pango/1.6.0/modules/pango-basic-fc.so)
==7290== by 0x4CAAFB9: (within /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CBE2F9: pango_shape (in /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CAFE81: (within /usr/lib/libpango-1.0.so.0.2202.0)
==7290== by 0x4CB0890: (within /usr/lib/libpango-1.0.so.0.2202.0)
==7290==
==7290==
==7290== 60 bytes in 5 blocks are still reachable in loss record 63 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4D67672: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D68394: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D68579: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D6860D: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D69284: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x50FCEC3: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50FDC10: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50FF5EE: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50FFCE6: (within /usr/lib/libexpat.so.1.5.2)
==7290== by 0x50F668B: XML_ParseBuffer (in /usr/lib/libexpat.so.1.5.2)
==7290== by 0x4D67F1D: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.3.0)
==7290==
==7290==
==7290== 60 bytes in 5 blocks are still reachable in loss record 64 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4D676D2: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D683B2: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D68579: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D6860D: (within /usr/lib/libfontconfig.so.1.3.0)
==7290== by 0x4D69

orbitcowboy
I live to help wx-kind
I live to help wx-kind
Posts: 178
Joined: Mon Jul 23, 2007 9:01 am

Post by orbitcowboy » Sat Mar 21, 2009 1:04 pm

smf wrote:
orbitcowboy wrote:A good tool to detect memory leaks and other issues in your programming code is cppcheck

https://sourceforge.net/projects/cppcheck/

Best regards

Orbitcowboy
I know. But I am not speaking of memory-leaks in my code...

I speak of memory-leaks which happen directly inside the wxwidgets-libraries. Despite that, I regard valgrind being as good (if not better) than cppcheck, as it does dynamic leak-checking by use of a rather secure virtual-machine instead of static code-analysis. If valgrind says there is a memory-leak then it is very, very unlikely that there is none...

a) valgrind says it is not in my code
b) valgrind finds these leaks for any sample-code, I have testet it with.
c) cppcheck doesn't moan about my code, too.

So, really, this is _inside_ wx. And well, I believe it should be fixed. Memory-leaks are allways (for various reasons) a very bad thing.

I nontheless love wxwidgets... btw...

cu
Stefan
i agree with you that this memory leaks should be fixed. The cppcheck tool is not so mighty as valgrind, which makes its checks during the runntime. But it can also detect memory and resource leaks, but see yourself:

http://cppcheck.wiki.sourceforge.net/found_bugs
recently there where memory leaks found in the wxWidgets library, using the cppcheck tool!

Best regards

Orbitcowboy
OS: Ubuntu 9.04 (32/64-Bit), Debian Lenny (32-Bit)
Compiler: gcc/g++-4.3.3 , gcc/g++-4.4.0
wxWidgets: 2.8.10,2.9.0

Auria
Site Admin
Site Admin
Posts: 6695
Joined: Thu Sep 28, 2006 12:23 am
Contact:

Post by Auria » Sat Mar 21, 2009 2:42 pm

While Valgrind is a very good tool, it may be frustratingly hard to interpret the result.

Those leaks you found might not be in wxWidgets either, they might be in components that wxWidgets uses, for instace GTK. Then they can also be in components that GTK uses, like X11. etc... you see how it goes. There is also a possibility that they're plain false positives (yup, this happens).

The bottom-line of this story, unfortunately, is that a valgrind output is generally not to be taken directly into consideration but needs human interpretation; you might need to check into the pointed components, check the code for the mentionned functions, and identify leaks there directly. This is also the only way (I know of) to know precisely which components does something wrong, if any.

mc2r
wxWorld Domination!
wxWorld Domination!
Posts: 1195
Joined: Thu Feb 22, 2007 4:47 pm
Location: Denver, Co
Contact:

Post by mc2r » Sat Mar 21, 2009 4:37 pm

Auria wrote:While Valgrind is a very good tool, it may be frustratingly hard to interpret the result.
Ugly and long for the amount of useful content. But, I've not found it that hard to interpret for me its harder to buckle down and wade into it.
Auria wrote:Those leaks you found might not be in wxWidgets either, they might be in components that wxWidgets uses, for instace GTK. Then they can also be in components that GTK uses, like X11. etc...
This point is the main reason I replied. I find valgrind pretty good at identifying which component the leak originated in, as well as any tool could be expected IMHO.

In this case the output is showing Auria's point exactly.

One example:

Code: Select all

==7290== 1 bytes in 1 blocks are still reachable in loss record 1 of 188
==7290== at 0x4025D2E: malloc (vg_replace_malloc.c:207)
==7290== by 0x4F8F8BA: _XlcDefaultMapModifiers (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4F8F93E: XSetLocaleModifiers (in /usr/lib/libX11.so.6.2.0)
==7290== by 0x4B8E095: (within /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x4B8E100: gdk_set_locale (in /usr/lib/libgdk-x11-2.0.so.0.1400.4)
==7290== by 0x48CA506: gtk_set_locale (in /usr/lib/libgtk-x11-2.0.so.0.1400.4)
==7290== by 0x4160C70: wxApp::Initialize(int&, wchar_t**) (in /usr/lib/libwx_gtk2u_core-2.8.so.0.5.0)
==7290== by 0x441F7DB: wxEntryStart(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FA3B: wxEntry(int&, wchar_t**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x441FC76: wxEntry(int&, char**) (in /usr/lib/libwx_baseu-2.8.so.0.5.0)
==7290== by 0x805A0F8: main (in /usr/share/doc/wx2.8-examples/examples/samples/listbox/listbox)
This might look like it's a wx leak because of some wx related entries but if you walk the stack all the way back it goes through gtk functions and ends up in _XlcDefaultMapModifiers.

Looking at headers and man pages you can see its a problem with X and not even gdk(the layer inbetween wx and x).

XSetLocaleModifiers calls _XlcDefaultMapModifiers(where the memory is allocated. XSetLocalModifiers returns a char * which is owned by X and the user is not allowed to modify or free.
man XSetLocaleModifiers wrote:The returned modifiers string is owned by Xlib and should not be modified or freed by the client. It
may be freed by Xlib after the current locale or modifiers are changed. Until freed, it will not be
modified by Xlib.

The only memory returned to the user(gdk, wx etc...) from that level or lower in the stack isn't user freeable. That means the onus lies on either X.


Auria wrote:The bottom-line of this story, unfortunately, is that a valgrind output is generally not to be taken directly into consideration but needs human interpretation; you might need to check into the pointed components, check the code for the mentionned functions, and identify leaks there directly. This is also the only way (I know of) to know precisely which components does something wrong, if any.
Yup. Valgrind can identify memory that has been allocated but not released and it can even tell you where that memory was allocated. But it has no idea where the proper place to free it is. That need human interpretation.

If it is fair to say that a leak is a wxWidgets leak because a wxWidgets function shows up in the stack trace, then it would also be fair to say the leak is a "your code" leak where the part of your code that called the wxWidgets function in the first place also shows up in the stack trace.

If you feel strongly that these leaks need to be fixed. Start with one. Walk it back, look at the code for the various libraries and open a bug report for each one you've tracked down and or submit a patch.

Not trying to lecture just it is a pet peeve of mine when someone complains about an OSS project, they are using, and its bugs and why no one has fixed it. If it is effecting you and you can't be bothered to make the effort, why should someone else. Just my opinion.

-Max

smf
Knows some wx things
Knows some wx things
Posts: 32
Joined: Wed Nov 12, 2008 7:04 pm

Post by smf » Mon Mar 23, 2009 6:58 am

...
Not trying to lecture just it is a pet peeve of mine when someone complains about an OSS project, they are using, and its bugs and why no one has fixed it.
It was in no way my intent to do any senseless complaining. I love wx and only was looking for an explanation of what I see with valgrind as not all of it's outputlines are to be understud easily.

You have pointed out, that not all of what seemingly is a bug in wx really is one in reality. Valgrind sometimes makes me (or one?!?) believe, that the bug is in the last output-line of the error-message, while it is somewhere in between... So, yes, it's output needs interpretation.
... If it is effecting you and you can't be bothered to make the effort, why should someone else. Just my opinion.
I, personally, for various reasons, in deed do not have the time or capabilities to fix anything there, yes... but I do not complain if noone else hasn't, too. The only thing I stated was a generic "it should be fixed" sentence, without the intend to offend anyone... And regardless if it's in wx, gtk, xlib, ...well, it should be fixed, shouldn't it?

cu
Stefan

orbitcowboy
I live to help wx-kind
I live to help wx-kind
Posts: 178
Joined: Mon Jul 23, 2007 9:01 am

Post by orbitcowboy » Mon Mar 23, 2009 8:55 pm

See also this thread, here is discussed the similar question:

http://forums.wxwidgets.org/viewtopic.p ... emory+leak
OS: Ubuntu 9.04 (32/64-Bit), Debian Lenny (32-Bit)
Compiler: gcc/g++-4.3.3 , gcc/g++-4.4.0
wxWidgets: 2.8.10,2.9.0

Post Reply