Crash when font deleted or installed while the Text and Font dialog is open
#### Summary: Deleting a font in use in a document causes Inkscape to crash #### Steps to reproduce: <!-- Describe what you did (step-by-step) so we can reproduce: --> - Install some font - open Inkscape - Add some text and set it to that font - Delete that font #### What happened? Inkscape crashes #### What should have happened? Switch to fallback font/ show error and ask to choose different font #### Version info ``` Inkscape 1.4 (e7c3feb100, 2024-10-09) Compile (Run) GLib version: 2.82.4 GTK version: 3.24.43 (3.24.43) glibmm version: 2.66.7 gtkmm version: 3.24.9 libxml2 version: 2.13.5 libxslt version: 1.1.42 Cairo version: 1.18.2 (1.18.2) Pango version: 1.54.0 (1.54.0) HarfBuzz version: 10.1.0 (10.1.0) OS version: EndeavourOS ``` #### Logs ``` <pre> 0# Inkscape::Application::crash_handler(int) in /usr/bin/../lib/inkscape/libinkscape_base.so.1.4.0.0 1# 0x000073F89024C1D0 in /usr/lib/libc.so.6 2# pango_font_family_list_faces in /usr/bin/../lib/inkscape/../libpango-1.0.so.0 3# FontFactory::GetUIStyles(_PangoFontFamily*) in /usr/bin/../lib/inkscape/libinkscape_base.so.1.4.0.0 4# Inkscape::FontLister::ensureRowStyles(Gtk::TreeIter) in /usr/bin/../lib/inkscape/libinkscape_base.so.1.4.0.0 5# Inkscape::UI::Widget::FontSelector::on_family_changed() in /usr/bin/../lib/inkscape/libinkscape_base.so.1.4.0.0 6# Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) in /usr/lib/libglibmm-2.4.so.1 7# 0x000073F890178E1C in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 8# g_signal_emit_valist in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 9# g_signal_emit in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 10# 0x000073F88E932237 in /usr/bin/../lib/inkscape/../libgtk-3.so.0 11# 0x000073F88E92C122 in /usr/bin/../lib/inkscape/../libgtk-3.so.0 12# g_closure_invoke in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 13# 0x000073F890188565 in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 14# 0x000073F890178CA9 in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 15# g_signal_emit_valist in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 16# g_signal_emit in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 17# gtk_list_store_remove in /usr/bin/../lib/inkscape/../libgtk-3.so.0 18# gtk_list_store_clear in /usr/bin/../lib/inkscape/../libgtk-3.so.0 19# Inkscape::FontLister::init_font_families(int, int) in /usr/bin/../lib/inkscape/libinkscape_base.so.1.4.0.0 20# 0x000073F891C7DCE0 in /usr/bin/../lib/inkscape/libinkscape_base.so.1.4.0.0 21# g_closure_invoke in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 22# 0x000073F8901888DF in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 23# 0x000073F890178CA9 in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 24# g_signal_emit_valist in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 25# g_signal_emit in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 26# 0x000073F890163D16 in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 27# g_object_notify_by_pspec in /usr/bin/../lib/inkscape/../libgobject-2.0.so.0 28# 0x000073F88EEBB457 in /usr/bin/../lib/inkscape/../libgdk-3.so.0 29# 0x000073F88EEF5E80 in /usr/bin/../lib/inkscape/../libgdk-3.so.0 30# 0x000073F890B0D559 in /usr/lib/libglib-2.0.so.0 31# 0x000073F890B70257 in /usr/lib/libglib-2.0.so.0 32# g_main_context_iteration in /usr/lib/libglib-2.0.so.0 33# g_application_run in /usr/bin/../lib/inkscape/../libgio-2.0.so.0 34# main in /usr/bin/inkscape 35# 0x000073F890234E08 in /usr/lib/libc.so.6 36# __libc_start_main in /usr/lib/libc.so.6 37# _start in /usr/bin/inkscape </pre> <details><summary>System info</summary> Inkscape 1.4 (e7c3feb100, 2024-10-09) Compile (Run) GLib version: 2.82.4 GTK version: 3.24.43 (3.24.43) glibmm version: 2.66.7 gtkmm version: 3.24.9 libxml2 version: 2.13.5 libxslt version: 1.1.42 Cairo version: 1.18.2 (1.18.2) Pango version: 1.54.0 (1.54.0) HarfBuzz version: 10.1.0 (10.1.0) OS version: EndeavourOS </details> ```
issue