Crasher: Joining end nodes of two paths together
Summary:
I have two paths. When I select the end node of each and click the Join Selected Nodes button on the top toolbar, Inkscape crashes.
I opened the emergency save and tried again. It crashed again.
Steps to reproduce:
- open classic twills circles etc.svg in Inkscape
- switch to the node tool
- select the rightmost node in Path 76 and the leftmost node in Path 71 (both in Layer 1)
- click the Join Selected Nodes button in the top toolbar
- undo
What happened?
Inkscape crashed, made an emergency backup, and suggested I file a bug report if I could reproduce the behaviour. Which I can. Here's the backtrace from the second time it happened:
0# boost::stacktrace::basic_stacktrace >::init(unsigned long long, unsigned long long) in libinkscape_base 1# Inkscape::Application::crash_handler(int) in libinkscape_base 2# 0x00007FF6E46621B2 in inkscape 3# _C_specific_handler in ntdll 4# _chkstk in ntdll 5# _RtlFindCharInUnicodeString in ntdll 6# _KiUserExceptionDispatcher in ntdll 7# SPDocument::doc2dt() const in libinkscape_base 8# SPItem::i2dt_affine() const in libinkscape_base 9# KnotHolderEntity::update_knot() in libinkscape_base 10# KnotHolder::update_knots() in libinkscape_base 11# Inkscape::UI::SelectedColor::setValue(unsigned int) in libinkscape_base 12# Inkscape::XML::CompositeNodeObserver::notifyAttributeChanged(Inkscape::XML::Node&, unsigned int, Inkscape::Util::ptr_shared, Inkscape::Util::ptr_shared) in libinkscape_base 13# Inkscape::XML::SimpleNode::setAttributeImpl(char const*, char const*) in libinkscape_base 14# Inkscape::XML::EventChgAttr::_undoOne(Inkscape::XML::NodeObserver&) const in libinkscape_base 15# sp_repr_undo_log(Inkscape::XML::Event*) in libinkscape_base 16# Inkscape::DocumentUndo::undo(SPDocument*) in libinkscape_base 17# Gio::SimpleAction::~SimpleAction() in libgiomm_2_4_1 18# _g_closure_invoke in libgobject_2_0_0 19# _g_param_spec_variant in libgobject_2_0_0 20# _g_signal_emit_valist in libgobject_2_0_0 21# _g_signal_emit in libgobject_2_0_0 22# _g_simple_action_set_state in libgio_2_0_0 23# _gtk_application_get_menu_by_id in libgtk_3_0 24# _gtk_window_activate_key in libgtk_3_0 25# _gtk_window_activate_key in libgtk_3_0 26# Gtk::Widget::on_key_press_event(_GdkEventKey*) in libgtkmm_3_0_1 27# Gtk::Widget_Class::key_press_event_callback(_GtkWidget*, _GdkEventKey*) in libgtkmm_3_0_1 28# 0x00007FFC55862F94 in libgtk_3_0 29# _g_closure_invoke in libgobject_2_0_0 30# _g_signal_emit_valist in libgobject_2_0_0 31# _g_signal_emit in libgobject_2_0_0 32# _gtk_requisition_copy in libgtk_3_0 33# _gtk_lock_button_set_permission in libgtk_3_0 34# _gtk_main_do_event in libgtk_3_0 35# _gdk_event_free in libgdk_3_0 36# _gdk_win32_drag_context_get_type in libgdk_3_0 37# _g_clear_list in libglib_2_0_0 38# _g_main_context_check in libglib_2_0_0 39# _g_main_context_iteration in libglib_2_0_0 40# _g_application_run in libgio_2_0_0 41# 0x00007FF6E46637BB in inkscape 42# 0x00007FF6E46612EE in inkscape 43# 0x00007FF6E46613E6 in inkscape 44# _BaseThreadInitThunk in KERNEL32 45# _RtlUserThreadStart in ntdll
System info
Inkscape 1.3 (0e150ed6, 2023-07-21)GLib version: 2.76.4
GTK version: 3.24.38
glibmm version: 2.66.6
gtkmm version: 3.24.7
libxml2 version: 2.11.4
libxslt version: 1.1.38
Cairo version: 1.17.7
Pango version: 1.50.14
HarfBuzz version: 8.0.1
OS version: Windows 11 22H2
What should have happened?
It shouldn't have crashed. ;) (It should have joined the nodes together.)
Sample attachments: classic_twills_circles_etc.svg.2023_09_14_21_55_19.0.svg
Version info
Inkscape 1.3 (0e150ed6c4, 2023-07-21)
GLib version: 2.76.4
GTK version: 3.24.38
glibmm version: 2.66.6
gtkmm version: 3.24.7
libxml2 version: 2.11.4
libxslt version: 1.1.38
Cairo version: 1.17.7
Pango version: 1.50.14
HarfBuzz version: 8.0.1
OS version: Windows 11 22H2
Good luck! May the force be with you!
Edited by Thomas Holder