Git version/ MacOS / Quartz: Crash when clicking to draw second element

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Git version/ MacOS / Quartz: Crash when clicking to draw second element

Friedrich Beckmann

I try to build current git master (October 3rd, 2017) version on MacOS. I used Macports (+quartz) to install
all required libraries and then build with CMake. The build process works and I can
install inkscape. I have El Capitan with xcode 7.3. inkscape also opens.

When I click the pen tool I can draw a first line. Clicking in the draw window to start the next line will crash inkscape.
The same happens when I try to draw a second elipse. I traced it with the debugger and the problem is that
the current selection is cleared. The failure is here:

Process 27826 stopped
* thread #1: tid = 0xd6be1e, 0x0000000100d0801a libinkscape_base.dylib`Inkscape::ObjectSet::_clear(this=0x000000010c678e70) + 106 at object-set.cpp:123, queue = '', stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT)
    frame #0: 0x0000000100d0801a libinkscape_base.dylib`Inkscape::ObjectSet::_clear(this=0x000000010c678e70) + 106 at object-set.cpp:123
   120 }
   122 void ObjectSet::_clear() {
-> 123    for (auto object: _container) {
   124        _remove(object);
   125    }
   126 }
(lldb) quit

And the calling frames are here:

(lldb) f 3
frame #3: 0x00000001006533fb libinkscape_base.dylib`Inkscape::UI::Tools::PencilTool::root_handler(this=0x0000000112bae100, event=0x000000010672f950) + 91 at pencil-tool.cpp:109
   107    switch (event->type) {
   108        case GDK_BUTTON_PRESS:
-> 109            ret = this->_handleButtonPress(event->button);
   110            break;
   112        case GDK_MOTION_NOTIFY:
(lldb) f 2
frame #2: 0x00000001006538de libinkscape_base.dylib`Inkscape::UI::Tools::PencilTool::_handleButtonPress(this=0x0000000112bae100, bevent=0x000000010672f950) + 1054 at pencil-tool.cpp:198
   195                        // This is the first click of a new curve; deselect item so that
   196                        // this curve is not combined with it (unless it is drawn from its
   197                        // anchor, which is handled by the sibling branch above)
-> 198                        selection->clear();
   199                        desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Creating new path"));
   200                        m.freeSnapReturnByRef(p, Inkscape::SNAPSOURCE_NODE_HANDLE);
   201                    } else if (selection->singleItem() && SP_IS_PATH(selection->singleItem())) {
(lldb) b pencil-tool.cpp:198

Anybody out there who sees this on MacOS with the quartz backend? Any ideas?


Check out the vibrant tech community on one of the world's most
engaging tech sites,!
Inkscape-devel mailing list
[hidden email]