assertion failed, file sp-conn-end.cpp: line 191

Bug #168588 reported by Bug Importer
0
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
Critical
Johan Engelen

Bug Description

While trying to group together some nodes in the attached drawing I keep
hitting this assertion.

** ERROR **: file sp-conn-end.cpp: line 191 (NR::Point
calc_bbox_conn_pt(const NR::Rect&, const NR::Point&)): assertion failed:
((offset[otherDim] >= 0) == (cp[otherDim] >= 0))

I'm running inkscape-0.45.1-1.fc6 from Fedora Extras 6.

I'm trying to group the tree on the far left so I can distribute the three
on the left equally.

(gdb) bt
#0 0x00cc9402 in __kernel_vsyscall ()
#1 0x0101fd40 in raise () from /lib/libc.so.6
#2 0x01021591 in abort () from /lib/libc.so.6
#3 0x00143c92 in g_logv () from /lib/libglib-2.0.so.0
#4 0x00143cc9 in g_log () from /lib/libglib-2.0.so.0
#5 0x00143d46 in g_assert_warning () from /lib/libglib-2.0.so.0
#6 0x081d9fc6 in calc_bbox_conn_pt (bbox=@0xbfbbd4f4, p=@0xbfbbd794)
    at sp-conn-end.cpp:191
#7 0x081da52f in sp_conn_end_move_compensate (mp=<value optimized out>,
    moved_item=<value optimized out>, path=0xb5632f8, updatePathRepr=true)
    at sp-conn-end.cpp:85
#8 0x081d8e2b in emitPathInvalidationNotification (ptr=0xb5632f8)
    at /usr/include/sigc++-2.0/sigc++/signal.h:686
#9 0x0849bbd0 in Avoid::Router::callbackAllInvalidConnectors
(this=0xa4e0e68)
    at libavoid/router.cpp:339
#10 0x0849cb4d in Avoid::Router::addShape (this=0xa4e0e68,
shape=0xbbcfa28)
    at libavoid/router.cpp:108
#11 0x082438eb in SPAvoidRef::handleSettingChange (this=0xa5d16c8)
    at conn-avoid-ref.cpp:111
#12 0x081f08f4 in sp_item_update (object=0xa57c4a0, ctx=0xbfbbdaf8,
    flags=<value optimized out>) at sp-item.cpp:629
#13 0x082097fb in sp_shape_update (object=0xa57c4a0, ctx=0xbfbbdaf8,
flags=13)
    at sp-shape.cpp:212
---Type <return> to continue, or q <return> to quit---
#14 0x081f7e4b in SPObject::updateDisplay (this=0xa57c4a0, ctx=0xbfbbdaf8,

    flags=12) at sp-object.cpp:1236
#15 0x081ec641 in CGroup::onUpdate (this=0xaba0670, ctx=0xbfbbdc38,
flags=15)
    at sp-item-group.cpp:616
#16 0x081f7e4b in SPObject::updateDisplay (this=0xa584db0, ctx=0xbfbbdc38,

    flags=12) at sp-object.cpp:1236
#17 0x081ec641 in CGroup::onUpdate (this=0xa5d2520, ctx=0xbfbbdd78,
flags=11)
    at sp-item-group.cpp:616
#18 0x081f7e4b in SPObject::updateDisplay (this=0xa584eb8, ctx=0xbfbbdd78,

    flags=0) at sp-object.cpp:1236
#19 0x081ec641 in CGroup::onUpdate (this=0xa4e64d0, ctx=0xbfbbdeb8,
flags=2)
    at sp-item-group.cpp:616
#20 0x081f7e4b in SPObject::updateDisplay (this=0xa568038, ctx=0xbfbbdeb8,

    flags=0) at sp-object.cpp:1236
#21 0x081ec641 in CGroup::onUpdate (this=0xa4cf2a8, ctx=0xbfbbdfd8,
flags=2)
    at sp-item-group.cpp:616
#22 0x08206d6f in sp_root_update (object=0xa4df100, ctx=0xbfbbe248,
flags=2)
    at sp-root.cpp:544
#23 0x081f7e4b in SPObject::updateDisplay (this=0xa4df100, ctx=0xbfbbe248,

    flags=0) at sp-object.cpp:1236
#24 0x081bb4c3 in SPDocument::_updateDocument (this=0xa59afa0)
    at document.cpp:763
#25 0x081bb531 in sp_document_ensure_up_to_date (doc=0xa59afa0)
---Type <return> to continue, or q <return> to quit---
    at document.cpp:785
#26 0x08257429 in sp_document_maybe_done (doc=0xa59afa0, key=0x0,
    event_type=50, event_description=@0xbfbbe37c) at document-undo.cpp:141
#27 0x0825786c in sp_document_done (doc=0xa59afa0, event_type=50,
    event_description=@0xbfbbe468) at document-undo.cpp:121
#28 0x081d169c in sp_selection_group () at selection-chemistry.cpp:518
#29 0x0844db15 in sp_action_perform (action=0xaa8bd20, data=0x0)
    at helper/action.cpp:146
#30 0x081d623a in sp_shortcut_invoke (shortcut=33554535, view=0xa9cfe00)
    at shortcuts.cpp:53
#31 0x08450a27 in sp_window_key_press (widget=0xac213f0, event=0xae2e370)
    at helper/window.cpp:33
#32 0x004d90f0 in gtk_marshal_BOOLEAN__VOID ()
   from /usr/lib/libgtk-x11-2.0.so.0
#33 0x00d65f0b in g_closure_invoke () from /lib/libgobject-2.0.so.0
#34 0x00d77171 in g_signal_override_class_closure ()
   from /lib/libgobject-2.0.so.0
#35 0x00d78147 in g_signal_emit_valist () from /lib/libgobject-2.0.so.0
#36 0x00d78539 in g_signal_emit () from /lib/libgobject-2.0.so.0
#37 0x005ed1c8 in gtk_widget_get_default_style ()
   from /usr/lib/libgtk-x11-2.0.so.0
#38 0x004d25ca in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0
#39 0x004d3797 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#40 0x0025f0ea in gdk_add_client_message_filter ()
   from /usr/lib/libgdk-x11-2.0.so.0
#41 0x0013b342 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#42 0x0013e31f in g_main_context_check () from /lib/libglib-2.0.so.0
#43 0x0013e6c9 in g_main_loop_run () from /lib/libglib-2.0.so.0
#44 0x004d3c14 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#45 0x068bc287 in Gtk::Main::run_impl () from /usr/lib/libgtkmm-2.4.so.1
#46 0x068bc072 in Gtk::Main::run () from /usr/lib/libgtkmm-2.4.so.1
#47 0x081b5d27 in sp_main_gui (argc=2, argv=0xbfbbecd4) at main.cpp:656
#48 0x082b36e3 in Inkscape::NSApplication::Application::run
(this=0xbfbbec14)
    at application/application.cpp:117
#49 0x081b61fd in main (argc=2, argv=0xbfbbecd4) at main.cpp:491

Tags: node-editing
Revision history for this message
Bug Importer (bug-importer) wrote :
Revision history for this message
Nstraz (nstraz) wrote :

Originator: NO

More details (and I recovered my login),

(gdb) info locals
ctr = {_pt = {0, 0}}
lengths = {_pt = {-2e+18, -2e+18}}
cp = {_pt = {501.20339341674804, 258.21708869934082}}
offset = {_pt = {-2e+18, -1.0303884294918756e+18}}
__PRETTY_FUNCTION__ = "NR::Point calc_bbox_conn_pt(const NR::Rect&, const
NR::Point&)"

Revision history for this message
Nstraz (nstraz) wrote :

Originator: NO

(gdb) info args
bbox = (const NR::Rect &) @0xbf94c274: {_min = {_pt = {1e+18, 1e+18}},
_max = {
    _pt = {-1e+18, -1e+18}}}
p = (const NR::Point &) @0xbf94c514: {_pt = {501.20339341674804,
    258.21708869934082}}

Revision history for this message
Buliabyak-users (buliabyak-users) wrote :

Originator: NO

Michael: in svn it does not crash on grouping the tree, but one of the
connectors runs to the 0,0 point. And it crashes if I undo grouping.

Bryce Harrington (bryce)
Changed in inkscape:
status: New → Confirmed
Revision history for this message
Johan Engelen (johanengelen) wrote :

Added null-pointer checks to sp_item_update which fixes the crash. One of the connector still runs to 0,0, also after undoing the grouping. Seems this is caused by bug: #168667

Changed in inkscape:
assignee: mjwybrow → johanengelen
status: Confirmed → Fix Released
Changed in inkscape:
milestone: none → 0.46
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.