So far "my" crash has not re-occurred. I enabled the address sanitizer and the undefined behavior sanitizer. The latter triggered only on a single left-shift of an "occupation" bit (once).
At exit, there are some memory leaks, but nothing big. But I did notice
a colormap was involved, which may be related to the crash somehow.
The reports related to atexit are false-positives (well they are true,
but hidden in a library and there is nothing you can do about it).
Parsing the config file seems leaky. GetHints() is involved in several
leaks. But I only seem to see "static" leaks, that don't re-occur over
time. Nothing that re-occurs for every window, or something like that.
Here is the full report:
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ewmh.c:1529:10: runtime error: left
shift of 1073741824 by 1 places cannot be represented in type 'int'
=================================================================
==827==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 1272 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825f2c in __interceptor_realloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:80
#1 0x7a2c490ab205 in _reallocarr /usr/src/lib/libc/stdlib/reallocarr.c:85
#2 0x6210000014ff (<unknown module>)
Direct leak of 1041 byte(s) in 120 object(s) allocated from:
#0 0x7a2c4c8487e6 in strdup
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_interceptors.cc:565
#1 0x59ffeb in yyparse
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/gram.y:1119
#2 0x50aa36 in twmrc_error_prefix
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/parse.c:298
#3 0x50a8d2 in ParseTwmrc
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/parse.c:260
#4 0x50a436 in LoadTwmrc
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/parse.c:180
#5 0x42ecf3 in ctwm_main
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_main.c:593
#6 0x407149 in main /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_wrap.c:6
#7 0x40705c in ___start
(/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/./build/ctwm+0x40705c)
Direct leak of 64 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x7a2c49e09dd4 in xpmParseDataAndCreate
/usr/xsrc/external/mit/libXpm/dist/src/create.c:2113
Direct leak of 56 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825d61 in calloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:75
#1 0x7a2c4ae2ffb5 in XGetWMHints
/usr/xsrc/external/mit/libX11/dist/src/GetHints.c:131
Direct leak of 32 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x7a2c49143e47 in atexit_handler_alloc
/usr/src/lib/libc/stdlib/atexit.c:112
#2 0x7a2c49143e47 in __cxa_atexit_internal
/usr/src/lib/libc/stdlib/atexit.c:158
Direct leak of 8 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x428805 in FetchWmColormapWindows
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/colormaps.c:407
#2 0x408168 in AddWindow
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/add_window.c:207
#3 0x4560a3 in HandleMapRequest
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_handlers.c:1931
#4 0x440bdb in DispatchEvent
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:335
#5 0x43fff4 in HandleEvents
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:197
#6 0x4331ed in ctwm_main
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_main.c:1058
#7 0x407149 in main /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_wrap.c:6
#8 0x40705c in ___start
(/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/./build/ctwm+0x40705c)
Direct leak of 6 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x7a2c4ae303c7 in XGetClassHint
/usr/xsrc/external/mit/libX11/dist/src/GetHints.c:319
Direct leak of 6 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x7a2c4ae30407 in XGetClassHint
/usr/xsrc/external/mit/libX11/dist/src/GetHints.c:326
Indirect leak of 128 byte(s) in 4 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x7a2c49143e47 in atexit_handler_alloc
/usr/src/lib/libc/stdlib/atexit.c:112
#2 0x7a2c49143e47 in __cxa_atexit_internal
/usr/src/lib/libc/stdlib/atexit.c:158
Indirect leak of 40 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x4267b6 in UninstallRootColormap
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/colormaps.c:214
#2 0x426f81 in CreateColormapWindow
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/colormaps.c:314
#3 0x4289d4 in FetchWmColormapWindows
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/colormaps.c:456
#4 0x408168 in AddWindow
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/add_window.c:207
#5 0x4560a3 in HandleMapRequest
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_handlers.c:1931
#6 0x440bdb in DispatchEvent
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:335
#7 0x43fff4 in HandleEvents
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:197
#8 0x4331ed in ctwm_main
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_main.c:1058
#9 0x407149 in main /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_wrap.c:6
#10 0x40705c in ___start
(/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/./build/ctwm+0x40705c)
Indirect leak of 24 byte(s) in 1 object(s) allocated from:
#0 0x7a2c4c825bb8 in malloc
/usr/src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:67
#1 0x426acc in CreateColormapWindow
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/colormaps.c:275
#2 0x4289d4 in FetchWmColormapWindows
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/colormaps.c:456
#3 0x408168 in AddWindow
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/add_window.c:207
#4 0x4560a3 in HandleMapRequest
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_handlers.c:1931
#5 0x440bdb in DispatchEvent
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:335
#6 0x43fff4 in HandleEvents
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/event_core.c:197
#7 0x4331ed in ctwm_main
/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_main.c:1058
#8 0x407149 in main /mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/ctwm_wrap.c:6
#9 0x40705c in ___start
(/mnt/vol1/rhialto/cvs/other/ctwm/bzr/trunk/./build/ctwm+0x40705c)
SUMMARY: AddressSanitizer: 2677 byte(s) leaked in 133 allocation(s).
-Olaf.
--
___ "Buying carbon credits is a bit like a serial killer paying someone else to
\X/ have kids to make his activity cost neutral." -The BOFH falu.nl@rhialto
signature.asc
Description: PGP signature
