Inkscape crash in font selector (SEGV in FontVariations::update()), IF Noto Color Emoji font is installed AND made a default choice in "fonts.conf"
Summary:
On this (otherwise healthy) system, attempting to use any font chooser in Inkscape crashes instantly.
Steps to reproduce:
- Launch Inkscape
- Click the big "T" icon
What happened?
Inkscape crashes. (See below for stack trace and screen shot.)
What should have happened?
Get the font chooser as usual.
Version Info:
Inkscape: 1.0.1+r74
OS: Ubuntu 20.04
Hardware: Dell XPS 17 (9700)
Details
Running under gdb, I get this stack trace:
Thread 1 "inkscape" received signal SIGSEGV, Segmentation fault.
0x00007ffff76c348f in Inkscape::UI::Widget::FontVariations::update(Glib::ustring const&) () from /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
(gdb) bt
#0 0x00007ffff76c348f in Inkscape::UI::Widget::FontVariations::update(Glib::ustring const&) ()
at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#1 0x00007ffff76a7f2c in Inkscape::UI::Widget::FontSelector::update_variations(Glib::ustring const&) ()
at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#2 0x00007ffff76a94e0 in Inkscape::UI::Widget::FontSelector::update_font() ()
at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#3 0x00007ffff76540a2 in Inkscape::UI::Dialog::TextEdit::onReadSelection(int, int) () at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#4 0x00007ffff76549a3 in Inkscape::UI::Dialog::TextEdit::setTargetDesktop(SPDesktop*) () at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#5 0x00007ffff749797d in Inkscape::UI::Dialog::DesktopTracker::setDesktop(SPDesktop*) () at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#6 0x00007ffff7497cdd in Inkscape::UI::Dialog::DesktopTracker::handleHierarchyChange() () at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#7 0x00007ffff7497d05 in Inkscape::UI::Dialog::DesktopTracker::hierarchyChangeCB(_GtkWidget*, _GtkWidget*, Inkscape::UI::Dialog::DesktopTracker*) ()
at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#8 0x00007ffff48ff802 in g_closure_invoke ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#9 0x00007ffff4913814 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#10 0x00007ffff491eb9e in g_signal_emit_valist ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#11 0x00007ffff491f0d3 in g_signal_emit ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#12 0x00007ffff59798c2 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#13 0x00007ffff597cb63 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#14 0x00007ffff598befa in gtk_widget_set_parent ()
at /lib/x86_64-linux-gnu/libgtk-3.so.0
#15 0x00007ffff5716d63 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#16 0x00007ffff74a011d in Inkscape::UI::Dialog::PanelDialog<Inkscape::UI::Dialog::Behavior::DockBehavior>::PanelDialog(Inkscape::UI::Widget::Panel&, char const*, int) () at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#17 0x00007ffff7498578 in ()
at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#18 0x00007ffff7499d83 in Inkscape::UI::Dialog::DialogManager::getDialog(unsigned int) () at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#19 0x00007ffff7499fd4 in Inkscape::UI::Dialog::DialogManager::showDialog(unsigned int, bool) ()
at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#20 0x00007ffff70a9aba in sp_action_perform(SPAction*, void*) ()
at /usr/bin/../lib/x86_64-linux-gnu/inkscape/libinkscape_base.so
#21 0x00007ffff48ff802 in g_closure_invoke ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ffff4913814 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff491eb9e in g_signal_emit_valist ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff491f0d3 in g_signal_emit ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ffff569e8e5 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#26 0x00007ffff592cd5d in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#27 0x00007ffff48ffa56 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#28 0x00007ffff491eb28 in g_signal_emit_valist ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#29 0x00007ffff491f0d3 in g_signal_emit ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#30 0x00007ffff57242ae in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#31 0x00007ffff5724318 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#32 0x00007ffff48ff802 in g_closure_invoke ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#33 0x00007ffff4913962 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#34 0x00007ffff491eb9e in g_signal_emit_valist ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#35 0x00007ffff491f0d3 in g_signal_emit ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#36 0x00007ffff5722754 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#37 0x00007ffff59d3ae1 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#38 0x00007ffff48ffa56 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#39 0x00007ffff491eb28 in g_signal_emit_valist ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#40 0x00007ffff491f0d3 in g_signal_emit ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#41 0x00007ffff57eafcc in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#42 0x00007ffff4902c56 in g_cclosure_marshal_VOID__BOXEDv ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#43 0x00007ffff48ffa56 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#44 0x00007ffff491eb28 in g_signal_emit_valist ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#45 0x00007ffff491f0d3 in g_signal_emit ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#46 0x00007ffff57e8012 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#47 0x00007ffff57e965b in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#48 0x00007ffff57ec646 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#49 0x00007ffff57b3bb0 in gtk_event_controller_handle_event ()
at /lib/x86_64-linux-gnu/libgtk-3.so.0
#50 0x00007ffff597616d in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#51 0x00007ffff59cd5ef in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#52 0x00007ffff48ffa56 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#53 0x00007ffff491ddd1 in g_signal_emit_valist ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#54 0x00007ffff491f0d3 in g_signal_emit ()
at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#55 0x00007ffff5977c23 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#56 0x00007ffff5833128 in () at /lib/x86_64-linux-gnu/libgtk-3.so.0
#57 0x00007ffff58353db in gtk_main_do_event ()
at /lib/x86_64-linux-gnu/libgtk-3.so.0
#58 0x00007ffff3fd9f79 in () at /lib/x86_64-linux-gnu/libgdk-3.so.0
#59 0x00007ffff400d106 in () at /lib/x86_64-linux-gnu/libgdk-3.so.0
#60 0x00007ffff65fafbd in g_main_context_dispatch ()
at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#61 0x00007ffff65fb240 in () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#62 0x00007ffff65fb2e3 in g_main_context_iteration ()
at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#63 0x00007ffff4a2dfd5 in g_application_run ()
at /lib/x86_64-linux-gnu/libgio-2.0.so.0
#64 0x0000555555556a9e in main ()
Finally, here's a (not very interesting) screenshot of the crash:

Edited by Daniel Egnor