[0.64.0] Shift-clicking inside Layers window causes segfault

I’m using a fresh download of the latest release of Synfig Studio on Parabola GNU/Linux.

In my Synfig project, I had a Rectangle layer and a Conical Gradient layer on the stage. After tweaking their colors and the angle of the gradient, I wanted to add both of the layers to a group. When I tried selecting multiple layers in the Layers window by shift-clicking each one, Synfig Studio vanished on the first click and gave this output to the terminal:

./synfigstudio: line 9: 21668 Segmentation fault      (core dumped) $PREFIX/bin/synfigstudio $@

I am not sure if this only happens on my computer. This problem doesn’t always happen. Sometimes I’m able to shift-click and it works fine. It usually only happens when I have been editing a project for a while. This also happened to me in the previous version of Synfig Studio. Here’s what usually happens before my project crashes:

  1. Open Synfig Studio 0.64.0 from a terminal.
  2. Make a new project.
  3. Add new layers and edit their properties.
  4. Shift-click a layer in the Layers window.

Can’t reproduce it here: Mac OS X 10.8 or Linux Mint 14 64 bits.
Can you tell us more details about your system and architecture?
Can you tie up the recipe? Specify which layers to create and on which layer you do shift click.
-G

Thanks for replying!

Here is the output of uname -a:

Linux applebox 3.8.11-1-LIBRE #1 SMP PREEMPT Fri May 3 13:02:29 UYT 2013 i686 GNU/Linux

My computer has a 32-bit Intel processor and is running an up-to-date Parabola GNU/Linux, a derivative of Arch Linux that focuses on being pure free software. I am running the linux-libre kernel. My graphics card is a Radeon X1300, but 3D acceleration doesn’t work because it depends on non-free kernel modules. The copy of Synfig Studio 0.64.0 I am using was downloaded straight from the Synfig website.

I don’t think it breaks depending on which layer I shift-click in the Layers window. In this case, I think I shift-clicked the Rectangle layer first, and Synfig Studio immediately had a segmentation fault and disappeared. It also doesn’t seem to depend on which Layers I have out. When I first start up Synfig Studio, shift-clicking works perfectly. Since this morning I haven’t been able to reproduce it either. I remember that it happened to me in previous versions of Synfig, too.

EDIT:
I had another segfault. While playing with Synfig Studio, I held the Alt key and reached up to the top of the screen to click a button on my window manager’s panel. My window manager has sloppy focus, so if the cursor moves over a window, that window gets focus. When focus traveled from one Synfig window to another while I was holding the Alt key, Synfig crashed. Here is the output:

/home/<username>/bin/synfigstudio-0.64.0-20130509.master.8.i386/synfigstudio: line 9: 22649 Segmentation fault      (core dumped) $PREFIX/bin/synfigstudio $@

This is a little bit difficult to reproduce in a virtual machine… Can you test the same problem in other Linux box?
-G

Sorry, I spent some time reinstalling my OS because of memory errors from the kernel, and I haven’t gotten a chance to run Synfig Studio since then. I am not sure if I will be able to make the segfault happen again for a while. Thanks for doing what you can. It might just be a problem with my computer. Now that the newest Synfig is on the Parabola repositories, I think I will try it to see if the problem happens with it. Thanks for replying to my posts! :slight_smile:

i am making a package a lot of segfault cause of ui (kb and mouse)…

example of trace :
(gdb)
-stack-list-frames
done,stack=[frame={level=“0”,addr=“0x00007ffff6e2ce84”,func=“Gtk::Widget::event(_GdkEvent*)”,from="/usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1"},frame={level=“1”,addr=“0x000000000082e2b2”,func=“studio::DockDialog::on_key_press_event”,file=“docks/dockdialog.cpp”,fullname="/home/devinfo/Sources/Synfig/synfig/synfig-studio/src/gui/docks/dockdialog.cpp",line=“260”},frame={level=“2”,addr=“0x00007ffff6e29023”,func=“Gtk::Widget_Class::key_press_event_callback(_GtkWidget*, _GdkEventKey*)”,from="/usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1"},frame={level=“3”,addr=“0x00007ffff5f3add8”,func="??",from="/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0"},frame={level=“4”,addr=“0x00007ffff4f8a140”,func=“g_closure_invoke”,from="/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0"},frame={level=“5”,addr=“0x00007ffff4f9b2d0”,func="??",from="/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0"},frame={level=“6”,addr=“0x00007ffff4fa30cb”,func=“g_signal_emit_valist”,from="/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0"},frame={level=“7”,addr=“0x00007ffff4fa3642”,func=“g_signal_emit”,from="/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0"},frame={level=“8”,addr=“0x00007ffff6055191”,func="??",from="/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0"},frame={level=“9”,addr=“0x00007ffff5f39037”,func=“gtk_propagate_event”,from="/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0"},frame={level=“10”,addr=“0x00007ffff5f392c3”,func=“gtk_main_do_event”,from="/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0"},frame={level=“11”,addr=“0x00007ffff551ccac”,func="??",from="/usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0"},frame={level=“12”,addr=“0x00007ffff4ccaab5”,func=“g_main_context_dispatch”,from="/lib/x86_64-linux-gnu/libglib-2.0.so.0"},frame={level=“13”,addr=“0x00007ffff4ccade8”,func="??",from="/lib/x86_64-linux-gnu/libglib-2.0.so.0"},frame={level=“14”,addr=“0x00007ffff4ccb1e2”,func=“g_main_loop_run”,from="/lib/x86_64-linux-gnu/libglib-2.0.so.0"},frame={level=“15”,addr=“0x00007ffff5f382f7”,func=“gtk_main”,from="/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0"},frame={level=“16”,addr=“0x00000000007914f3”,func=“main”,file=“main.cpp”,fullname="/home/devinfo/Sources/Synfig/synfig/synfig-studio/src/gui/main.cpp",line=“100”}]
(gdb)

func=“Gtk::Widget::event(_GdkEvent*)”,from="/usr/lib/x86_64-linux-gnu/libgtkmm-2.4.so.1 is recurrent !

will share quickly …

see(:ya!