Pure Basic 5.70, 5.71 crash on New Project menu in Mint 19.1
Posted: Sat Jan 11, 2020 3:20 pm
In both 5.70 and 5.71 the IDE runs until I attempt to create a new project. PureBasic app core dumps with a SIGSEGV as soon as I select Project/New Project menu option. checkinstall.sh works OK.
Ran it in gdb to see if I could tell what is happening. This is what I get at the console.
Starting program: /home/doug/Apps/purebasic/compilers/purebasic
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff7f6d700 (LWP 21564)]
[New Thread 0x7fffed22d700 (LWP 21578)]
[New Thread 0x7fffe73ec700 (LWP 21579)]
[New Thread 0x7fffe6beb700 (LWP 21580)]
[New Thread 0x7fffec439700 (LWP 21593)]
Thread 1 "purebasic" received signal SIGSEGV, Segmentation fault.
tcache_get (tc_idx=0) at malloc.c:2943
2943 malloc.c: No such file or directory.
(gdb) list
2938 in malloc.c
(gdb) bt
#0 0x00007ffff4dd9207 in tcache_get (tc_idx=0) at malloc.c:2943
#1 0x00007ffff4dd9207 in __GI___libc_malloc (bytes=11) at malloc.c:3050
#2 0x00007ffff56beab9 in g_malloc ()
at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff56d843f in g_strdup ()
at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff6712b71 in () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#5 0x00007ffff6637558 in () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#6 0x00007ffff6637859 in () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#7 0x00007ffff6638406 in gtk_list_store_set_valist ()
at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#8 0x00007ffff66384f4 in gtk_list_store_set ()
at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#9 0x000000000065dd94 in ()
#10 0x000000000065ddad in ()
#11 0x0000000000669df0 in ()
#12 0x00000000004495bd in ()
#13 0x0000000000000001 in ()
#14 0x0000000000000000 in ()
(gdb)
It runs, although slowly, in valgrind with the following info:
==26671== Memcheck, a memory error detector
==26671== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==26671== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==26671== Command: ./purebasic
==26671== Parent PID: 18210
==26671==
==26671== Invalid free() / delete / delete[] / realloc()
==26671== at 0x4C30D3B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26671== by 0x7F94B1: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x66B230: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DA30: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DDAC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x669DEF: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x4495BC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== Address 0x11c1e960 is 0 bytes inside a block of size 10 free'd
==26671== at 0x4C30D3B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26671== by 0x7F94B1: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x66B162: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DA30: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x669DEF: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x4495BC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== Block was alloc'd at
==26671== at 0x4C31B25: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26671== by 0x7F934D: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x7F93EC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x66B238: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DA30: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65E751: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53F1CC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x241F: ???
==26671== by 0x683F1A: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x17: ???
==26671== by 0x45F951: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x9: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE16E: __wmemchr_sse2 (memchr.S:58)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE3D7: __wmemchr_sse2 (memchr.S:261)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE38D: __wmemchr_sse2 (memchr.S:236)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE3A7: __wmemchr_sse2 (memchr.S:243)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671==
==26671== HEAP SUMMARY:
==26671== in use at exit: 8,496,277 bytes in 73,723 blocks
==26671== total heap usage: 582,825 allocs, 509,103 frees, 127,961,677 bytes allocated
==26671==
==26671== LEAK SUMMARY:
==26671== definitely lost: 56,535 bytes in 1,981 blocks
==26671== indirectly lost: 90,814 bytes in 3,151 blocks
==26671== possibly lost: 4,122,982 bytes in 23,727 blocks
==26671== still reachable: 3,941,610 bytes in 43,310 blocks
==26671== of which reachable via heuristic:
==26671== length64 : 330,437 bytes in 2,398 blocks
==26671== newarray : 2,288 bytes in 63 blocks
==26671== suppressed: 0 bytes in 0 blocks
==26671== Rerun with --leak-check=full to see details of leaked memory
==26671==
==26671== For counts of detected and suppressed errors, rerun with: -v
==26671== Use --track-origins=yes to see where uninitialised values come from
==26671== ERROR SUMMARY: 22 errors from 5 contexts (suppressed: 10 from 1)
Ran it in gdb to see if I could tell what is happening. This is what I get at the console.
Starting program: /home/doug/Apps/purebasic/compilers/purebasic
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff7f6d700 (LWP 21564)]
[New Thread 0x7fffed22d700 (LWP 21578)]
[New Thread 0x7fffe73ec700 (LWP 21579)]
[New Thread 0x7fffe6beb700 (LWP 21580)]
[New Thread 0x7fffec439700 (LWP 21593)]
Thread 1 "purebasic" received signal SIGSEGV, Segmentation fault.
tcache_get (tc_idx=0) at malloc.c:2943
2943 malloc.c: No such file or directory.
(gdb) list
2938 in malloc.c
(gdb) bt
#0 0x00007ffff4dd9207 in tcache_get (tc_idx=0) at malloc.c:2943
#1 0x00007ffff4dd9207 in __GI___libc_malloc (bytes=11) at malloc.c:3050
#2 0x00007ffff56beab9 in g_malloc ()
at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007ffff56d843f in g_strdup ()
at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x00007ffff6712b71 in () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#5 0x00007ffff6637558 in () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#6 0x00007ffff6637859 in () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#7 0x00007ffff6638406 in gtk_list_store_set_valist ()
at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#8 0x00007ffff66384f4 in gtk_list_store_set ()
at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#9 0x000000000065dd94 in ()
#10 0x000000000065ddad in ()
#11 0x0000000000669df0 in ()
#12 0x00000000004495bd in ()
#13 0x0000000000000001 in ()
#14 0x0000000000000000 in ()
(gdb)
It runs, although slowly, in valgrind with the following info:
==26671== Memcheck, a memory error detector
==26671== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==26671== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==26671== Command: ./purebasic
==26671== Parent PID: 18210
==26671==
==26671== Invalid free() / delete / delete[] / realloc()
==26671== at 0x4C30D3B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26671== by 0x7F94B1: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x66B230: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DA30: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DDAC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x669DEF: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x4495BC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== Address 0x11c1e960 is 0 bytes inside a block of size 10 free'd
==26671== at 0x4C30D3B: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26671== by 0x7F94B1: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x66B162: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DA30: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x669DEF: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x4495BC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== Block was alloc'd at
==26671== at 0x4C31B25: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==26671== by 0x7F934D: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x7F93EC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x66B238: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65DA30: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x65E751: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53F1CC: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x241F: ???
==26671== by 0x683F1A: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x17: ???
==26671== by 0x45F951: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x9: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE16E: __wmemchr_sse2 (memchr.S:58)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE3D7: __wmemchr_sse2 (memchr.S:261)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE38D: __wmemchr_sse2 (memchr.S:236)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671== Conditional jump or move depends on uninitialised value(s)
==26671== at 0x7BAE3A7: __wmemchr_sse2 (memchr.S:243)
==26671== by 0x7BC932F: internal_fnwmatch (fnmatch_loop.c:155)
==26671== by 0x7BCBA47: fnmatch@@GLIBC_2.2.5 (fnmatch.c:434)
==26671== by 0x6455AD: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0x53D1F6: ??? (in /home/doug/Apps/purebasic/compilers/purebasic)
==26671== by 0xF5D1597: ???
==26671==
==26671==
==26671== HEAP SUMMARY:
==26671== in use at exit: 8,496,277 bytes in 73,723 blocks
==26671== total heap usage: 582,825 allocs, 509,103 frees, 127,961,677 bytes allocated
==26671==
==26671== LEAK SUMMARY:
==26671== definitely lost: 56,535 bytes in 1,981 blocks
==26671== indirectly lost: 90,814 bytes in 3,151 blocks
==26671== possibly lost: 4,122,982 bytes in 23,727 blocks
==26671== still reachable: 3,941,610 bytes in 43,310 blocks
==26671== of which reachable via heuristic:
==26671== length64 : 330,437 bytes in 2,398 blocks
==26671== newarray : 2,288 bytes in 63 blocks
==26671== suppressed: 0 bytes in 0 blocks
==26671== Rerun with --leak-check=full to see details of leaked memory
==26671==
==26671== For counts of detected and suppressed errors, rerun with: -v
==26671== Use --track-origins=yes to see where uninitialised values come from
==26671== ERROR SUMMARY: 22 errors from 5 contexts (suppressed: 10 from 1)