Inkscape crashes by opening fill and stroke (Shft-Ctrl-F)

Bug #342755 reported by Chris
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
Undecided
Unassigned

Bug Description

After loading a DXF file with the new import script of https://bugs.launchpad.net/inkscape/+bug/293940 and then opening fill and stroke (doesn't matter if by menu or by Shift+Ctrl+F) Inkscape crashes every time.
This is happening with the 0.46 version shipped with Ubuntu (8.10) as well as with the latest develop version of the nightly builds (which are still from the 02.02.09 => 0.46+devel~nightly8.10-7213-1)

To reproduce this bug you can simply take the DXF-File of post https://bugs.launchpad.net/inkscape/+bug/293940/comments/44, load it and then hit Shift-Ctrl-F.

I could try to post a backtrace if someone tells me how...

Tags: crash
Revision history for this message
Chris (mail-christianmayer) wrote :

I can specify the bug a bit closer now:

The import script was adding quite a few markers to the "defs" section of the "svg", e.g. with the following code:

 # inkex.etree.SubElement(defs, 'marker', {'id': entity, 'orient': 'auto', 'refX': '0.0', 'refY': '0.0', 'style': 'stroke-dasharray:0'} )

These additional markers seem to cause Inkscape to segfault. An easy way to reprduce the bug is:

- open an empty Inkscape
- open the XML-Editor (Shift-Ctrl-X)
- add an XML-Node to the svg:defs node and name it "svg:marker"
- open the fill and stroke menu (Shift-Crtl-F)
=> boom, segfault

Revision history for this message
Diederik van Lierop (mail-diedenrezi) wrote :
Download full text (5.5 KiB)

Using the workflow in Chris' 2nd post, Inkscape indeed crashes. This is the backtrace I've obtained

InkscapeSVN Linux GCC [C/C++ Local Application]
 gdb/mi (3/15/09 10:11 PM) (Suspended)
  Thread [1] (Suspended: Signal 'SIGSEGV' received. Description: Segmentation fault.)
   47 Geom::Matrix::operator[]() /home/diedenrezi/eclipse/InkscapeSVN/src/2geom/matrix.h:70 0x00000000004713cc
   46 Geom::operator*() /home/diedenrezi/eclipse/InkscapeSVN/src/2geom/matrix.cpp:219 0x0000000000d2f29b
   45 sp_shape_bbox() /home/diedenrezi/eclipse/InkscapeSVN/src/sp-shape.cpp:543 0x00000000004f921f
   44 sp_item_invoke_bbox_full() /home/diedenrezi/eclipse/InkscapeSVN/src/sp-item.cpp:776 0x00000000004be857
   43 CGroup::calculateBBox() /home/diedenrezi/eclipse/InkscapeSVN/src/sp-item-group.cpp:709 0x00000000004c3565
   42 sp_group_bbox() /home/diedenrezi/eclipse/InkscapeSVN/src/sp-item-group.cpp:278 0x00000000004c566e
   41 sp_item_invoke_bbox_full() /home/diedenrezi/eclipse/InkscapeSVN/src/sp-item.cpp:776 0x00000000004be857
   40 SPItem::getBounds() /home/diedenrezi/eclipse/InkscapeSVN/src/sp-item.cpp:734 0x00000000004bf361
   39 sp_marker_prev_new() /home/diedenrezi/eclipse/InkscapeSVN/src/widgets/stroke-style.cpp:589 0x0000000000bb20ca
   38 sp_marker_menu_build() /home/diedenrezi/eclipse/InkscapeSVN/src/widgets/stroke-style.cpp:669 0x0000000000bb26f9
   37 sp_marker_list_from_doc() /home/diedenrezi/eclipse/InkscapeSVN/src/widgets/stroke-style.cpp:710 0x0000000000bb2a0c
   36 ink_marker_menu_create_menu() /home/diedenrezi/eclipse/InkscapeSVN/src/widgets/stroke-style.cpp:785 0x0000000000bb2d8b
   35 ink_marker_menu() /home/diedenrezi/eclipse/InkscapeSVN/src/widgets/stroke-style.cpp:826 0x0000000000bb3a75
   34 sp_stroke_style_line_widget_new() /home/diedenrezi/eclipse/InkscapeSVN/src/widgets/stroke-style.cpp:1223 0x0000000000bb534d
   33 Inkscape::UI::Dialog::FillAndStroke::_layoutPageStrokeStyle() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/fill-and-stroke.cpp:87 0x0000000000835d84
   32 FillAndStroke() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/fill-and-stroke.cpp:54 0x0000000000837220
   31 Inkscape::UI::Dialog::FillAndStroke::getInstance() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/fill-and-stroke.h:38 0x00000000007fb8c9
   30 Inkscape::UI::Dialog::PanelDialog<Inkscape::UI::Dialog::Behavior::DockBehavior>::create<Inkscape::UI::Dialog::FillAndStroke>() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/panel-dialog.h:166 0x00000000007fb90c
   29 create<Inkscape::UI::Dialog::FillAndStroke, Inkscape::UI::Dialog::Behavior::DockBehavior>() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/dialog-manager.cpp:58 0x00000000007f37c5
   28 Inkscape::UI::Dialog::DialogManager::getDialog() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/dialog-manager.cpp:211 0x00000000007f2209
   27 Inkscape::UI::Dialog::DialogManager::showDialog() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/dialog-manager.cpp:230 0x00000000007f224d
   26 Inkscape::UI::Dialog::DialogManager::showDialog() /home/diedenrezi/eclipse/InkscapeSVN/src/ui/dialog/dialog-manager.cpp:223 0x00000000007f2292
   25 Inkscape::Di...

Read more...

Changed in inkscape:
status: New → Confirmed
Revision history for this message
Diederik van Lierop (mail-diedenrezi) wrote :

Fixed as of rev #21251

Thanks for taking the time to investigate this Chris!

Changed in inkscape:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.