#887978 solvespace: Crashes on startup

Package:
solvespace
Source:
solvespace
Description:
Parametric 2d/3d CAD
Submitter:
John Hasler
Date:
2022-06-30 16:09:05 UTC
Severity:
important
Tags:
#887978#5
Date:
2018-01-22 09:06:36 UTC
From:
To:
The program crashes on stratup, returning

  cannot load settings: Resource temporarily unavailable
  malloc(): memory corruption
  Aborted

#887978#10
Date:
2018-01-22 20:21:35 UTC
From:
To:
It sometimes returns

   cannot load settings: Resource temporarily unavailable
   free(): invalid pointer
   Aborted


Perhaps 1 time in 10 it starts up and runs (it still prints
 "cannot load settings: Resource temporarily unavailable")
though I've not yet tried to do
anything useful with it

#887978#15
Date:
2018-01-22 20:45:38 UTC
From:
To:
control -1 severity important
control -1 tags unreproducible

Hi,

thanks for your bugreport. Unfortunanately I am not able to reproduce
this bug. Could you please run it through gdb and send its output?

sudo apt-get install solvespace-dbgsym

gdb solvespace
wait till it crashes

Regards

Anton

#887978#24
Date:
2018-01-26 03:37:07 UTC
From:
To:
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
cannot load settings: Resource temporarily unavailable
[New Thread 0x7fffe435e700 (LWP 2126)]
malloc(): memory corruption

Thread 1 "solvespace" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007ffff3c646a0 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff3c65cf7 in __GI_abort () at abort.c:90
#2  0x00007ffff3ca6f87 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff3dacc38 "%s\n") at ../sysdeps/posix/libc_fatal.c:181
#3  0x00007ffff3cad27a in malloc_printerr (str=str@entry=0x7ffff3daae9e "malloc(): memory corruption") at malloc.c:5354
#4  0x00007ffff3cb05d4 in _int_malloc (av=av@entry=0x7ffff3fe0c20 <main_arena>, bytes=bytes@entry=232) at malloc.c:3738
#5  0x00007ffff3cb2a3e in __libc_calloc (n=<optimized out>, elem_size=<optimized out>) at malloc.c:3430
#6  0x00007fffe9894ff3 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#7  0x00007fffe96ddc9d in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#8  0x00007fffe9526b79 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#9  0x00007fffe9544923 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#10 0x00007fffe9509e96 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#11 0x00007fffe94ee27c in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#12 0x00007fffe9506c53 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#13 0x00007fffe943f643 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#14 0x0000555555609049 in SolveSpace::Entity::Draw(bool) ()
#15 0x0000555555609100 in SolveSpace::Entity::DrawAll(bool) ()
#16 0x00005555555f8a25 in SolveSpace::GraphicsWindow::Paint() ()
#17 0x00005555555e5cce in SolveSpace::GlWidget::on_expose_event(_GdkEventExpose*) ()
#18 0x00007ffff6eaa3c4 in Gtk::Widget_Class::expose_event_callback(_GtkWidget*, _GdkEventExpose*) ()
    at /usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1
#19 0x00007ffff64532ab in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#20 0x00007ffff50b6f9d in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#21 0x00007ffff50c9748 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ffff50d1e3f in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff50d2ebf in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff656926c in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#25 0x00007ffff6451b88 in gtk_main_do_event () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#26 0x00007ffff5e61bbf in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#27 0x00007ffff5e61b65 in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#28 0x00007ffff5e5e643 in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#29 0x00007ffff5e5efd0 in gdk_window_process_all_updates () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#30 0x00007ffff63d80e1 in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#31 0x00007ffff5e3dc3c in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#32 0x00007ffff2ca7dd5 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007ffff2ca81a0 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007ffff2ca84b2 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007ffff6450977 in gtk_main () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#36 0x00007ffff6e46d06 in Gtk::Main::run(Gtk::Window&) () at /usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1
#37 0x00005555555c40b4 in main ()
(gdb) quit
A debugging session is active.

	Inferior 1 [process 2122] will be killed.

Quit anyway? (y or n) y

#887978#29
Date:
2018-01-26 03:43:52 UTC
From:
To:
No symbols package to be found:

toncho/~ 23 sudo apt-get install solvespace-dbgsym
[sudo] password for john:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package solvespace-dbgsym

#887978#34
Date:
2018-01-26 09:53:58 UTC
From:
To:
Hi,

The *-dbgsym packages are located in a separate archive.  Please add

  deb https://deb.debian.org/debian-debug unstable-debug main

to your /etc/apt/sources.list and run `apt update`.  The package should
then be found.

Ansgar

#887978#39
Date:
2018-01-26 13:55:09 UTC
From:
To:
Built the package from source to get the debug packages.  New backtrace:

GNU gdb (Debian 7.12-6+b1) 7.12.0.20161007-git
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from solvespace...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/solvespace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
cannot load settings: Resource temporarily unavailable
[New Thread 0x7fffe435e700 (LWP 2126)]
malloc(): memory corruption

Thread 1 "solvespace" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007ffff3c646a0 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff3c65cf7 in __GI_abort () at abort.c:90
#2  0x00007ffff3ca6f87 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff3dacc38 "%s\n") at ../sysdeps/posix/libc_fatal.c:181
#3  0x00007ffff3cad27a in malloc_printerr (str=str@entry=0x7ffff3daae9e "malloc(): memory corruption") at malloc.c:5354
#4  0x00007ffff3cb05d4 in _int_malloc (av=av@entry=0x7ffff3fe0c20 <main_arena>, bytes=bytes@entry=232) at malloc.c:3738
#5  0x00007ffff3cb2a3e in __libc_calloc (n=<optimized out>, elem_size=<optimized out>) at malloc.c:3430
#6  0x00007fffe9894ff3 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#7  0x00007fffe96ddc9d in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#8  0x00007fffe9526b79 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#9  0x00007fffe9544923 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#10 0x00007fffe9509e96 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#11 0x00007fffe94ee27c in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#12 0x00007fffe9506c53 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#13 0x00007fffe943f643 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#14 0x0000555555609049 in SolveSpace::Entity::Draw(bool) ()
#15 0x0000555555609100 in SolveSpace::Entity::DrawAll(bool) ()
#16 0x00005555555f8a25 in SolveSpace::GraphicsWindow::Paint() ()
#17 0x00005555555e5cce in SolveSpace::GlWidget::on_expose_event(_GdkEventExpose*) ()
#18 0x00007ffff6eaa3c4 in Gtk::Widget_Class::expose_event_callback(_GtkWidget*, _GdkEventExpose*) ()
    at /usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1
#19 0x00007ffff64532ab in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#20 0x00007ffff50b6f9d in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#21 0x00007ffff50c9748 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ffff50d1e3f in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff50d2ebf in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff656926c in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#25 0x00007ffff6451b88 in gtk_main_do_event () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#26 0x00007ffff5e61bbf in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#27 0x00007ffff5e61b65 in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#28 0x00007ffff5e5e643 in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#29 0x00007ffff5e5efd0 in gdk_window_process_all_updates () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#30 0x00007ffff63d80e1 in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#31 0x00007ffff5e3dc3c in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#32 0x00007ffff2ca7dd5 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007ffff2ca81a0 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007ffff2ca84b2 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007ffff6450977 in gtk_main () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#36 0x00007ffff6e46d06 in Gtk::Main::run(Gtk::Window&) () at /usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1
#37 0x00005555555c40b4 in main ()
(gdb) quit
A debugging session is active.

	Inferior 1 [process 2122] will be killed.

Quit anyway? (y or n) y

#887978#44
Date:
2018-01-26 14:26:02 UTC
From:
To:
Included the wrong file.

GNU gdb (Debian 7.12-6+b1) 7.12.0.20161007-git
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from solvespace...Reading symbols from /usr/lib/debug/.build-id/50/03e258b447fd3fdb21bf3a291743ed9d3b40d2.debug...done.
done.
(gdb) run
Starting program: /usr/bin/solvespace
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
cannot load settings: Resource temporarily unavailable
[New Thread 0x7fffe415a700 (LWP 17572)]
malloc(): memory corruption

Thread 1 "solvespace" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007ffff3a606a0 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff3a61cf7 in __GI_abort () at abort.c:90
#2  0x00007ffff3aa2f87 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff3ba8c38 "%s\n") at ../sysdeps/posix/libc_fatal.c:181
#3  0x00007ffff3aa927a in malloc_printerr (str=str@entry=0x7ffff3ba6e9e "malloc(): memory corruption") at malloc.c:5354
#4  0x00007ffff3aac5d4 in _int_malloc (av=av@entry=0x7ffff3ddcc20 <main_arena>, bytes=bytes@entry=232) at malloc.c:3738
#5  0x00007ffff3aaea3e in __libc_calloc (n=<optimized out>, elem_size=<optimized out>) at malloc.c:3430
#6  0x00007fffe9690ff3 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#7  0x00007fffe94d9c9d in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#8  0x00007fffe9322b79 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#9  0x00007fffe9340923 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#10 0x00007fffe9305e96 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#11 0x00007fffe92ea27c in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#12 0x00007fffe9302c53 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#13 0x00007fffe923b643 in  () at /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so
#14 0x0000555555609639 in SolveSpace::Entity::Draw(bool) (this=this@entry=0x555555fbb750, drawAsHidden=drawAsHidden@entry=false)
    at ./src/drawentity.cpp:117
#15 0x00005555556096f0 in SolveSpace::Entity::DrawAll(bool) (drawAsHidden=drawAsHidden@entry=false) at ./src/drawentity.cpp:103
#16 0x00005555555f9015 in SolveSpace::GraphicsWindow::Paint() (this=<optimized out>) at ./src/draw.cpp:724
#17 0x00005555555e62be in SolveSpace::GlWidget::on_draw(Cairo::RefPtr<Cairo::Context> const&) (cr=..., this=0x555555ef1a10)
    at ./src/gtk/gtkmain.cpp:334
#18 0x00005555555e62be in SolveSpace::GlWidget::on_expose_event(_GdkEventExpose*) (this=0x555555ef1a10) at ./src/gtk/gtkmain.cpp:350
#19 0x00007ffff6eaa3c4 in Gtk::Widget_Class::expose_event_callback(_GtkWidget*, _GdkEventExpose*) ()
    at /usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1
#20 0x00007ffff64532ab in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#21 0x00007ffff50b6f9d in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ffff50c9748 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff50d1e3f in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff50d2ebf in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ffff656926c in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#26 0x00007ffff6451b88 in gtk_main_do_event () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#27 0x00007ffff5e61bbf in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#28 0x00007ffff5e61b65 in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#29 0x00007ffff5e5e643 in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#30 0x00007ffff5e5efd0 in gdk_window_process_all_updates () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#31 0x00007ffff63d80e1 in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#32 0x00007ffff5e3dc3c in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#33 0x00007ffff2aa3dd5 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007ffff2aa41a0 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007ffff2aa44b2 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#36 0x00007ffff6450977 in gtk_main () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#37 0x00007ffff6e46d06 in Gtk::Main::run(Gtk::Window&) () at /usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1
#38 0x00005555555c4568 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at ./src/gtk/gtkmain.cpp:1602
(gdb) quit
A debugging session is active.

	Inferior 1 [process 17568] will be killed.

Quit anyway? (y or n) y

#887978#49
Date:
2022-06-30 16:05:58 UTC
From:
To:
I'm wondering if you still see this bug in any newer stable release:
it looks like we couldn't track down any reproduction of the issue at
the time but 3.0 has a lot of changes since 2.3.