Dear Maintainer, After upgrading from Devuan Daedalus to Excalibur I noticed that the spacefm package is built with gtk3 instead of gtk2 which is what it was built with before. There used to be a separate package 'spacefm-gtk3' for those that wanted the experimental gtk3 version. Upstream however recommends building with gtk2. I attempted to use this gtk3 version after seeing that there was no longer an option in the Debian packages for the gtk2 version. This however proved itself problematic. The biggest issue is that the gtk3 version of spacefm will segfault seemingly randomly, however there are some cases that increase the likelihood of a segfault. The first case, just launching spacefm will result in this: ``` spacefm[9343]: segfault at 0 ip 00007f4a974f468c sp 00007fff58f47180 error 4 in libgdk-3.so.0.2417.32[5968c,7f4a974c9000+87000] likely on CPU 0 (core 0, socket 0) ``` Other cases involve drag-n-dropping a file into Gajim and pressing the 'alt' button on my keyboard while spacefm is the focused window shortly after. Unfortunately drag-n-drop does not work anymore in the gtk3 version of spacefm either. Drag-n-drop used to work fine in the gtk2 version of spacefm and in fact was prefferred due to gtk3's lack-luster filepicker portal, spacefm previously could have been used to compensate for it. When upgrading I did not expect the previously seperate package 'spacefm' and spacefm-gtk3' to me merged and result in the spacefm package being replaced with the spacefm-gtk3 package. I also expected to be able to use spacefm without segmentation faults and drag-n-drop functionality to continue to work as normal.
I ran into this bug with spacefm after upgrading to Debian 13, and I found an easy way to reproduce. Before the upgrade the `spacefm-gtk3` did not crash this way. Steps to reproduce: - Press `Ctrl` 7 times while spacefm window has focus This produces the following output in the terminal: ``` (spacefm:233252): Gtk-CRITICAL **: 09:10:52.819: gtk_widget_get_window: assertion 'GTK_IS_WIDGET (widget)' failed (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:52.819: g_object_ref: assertion 'G_IS_OBJECT (object)' failed (spacefm:233252): Gtk-CRITICAL **: 09:10:53.177: gtk_widget_get_window: assertion 'GTK_IS_WIDGET (widget)' failed (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:53.177: g_object_ref: assertion 'G_IS_OBJECT (object)' failed (spacefm:233252): Gtk-CRITICAL **: 09:10:53.540: gtk_widget_get_window: assertion 'GTK_IS_WIDGET (widget)' failed (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:53.540: g_object_ref: assertion 'G_IS_OBJECT (object)' failed (spacefm:233252): Gtk-CRITICAL **: 09:10:53.914: gtk_widget_get_window: assertion 'GTK_IS_WIDGET (widget)' failed (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:53.914: g_object_ref: assertion 'G_IS_OBJECT (object)' failed (spacefm:233252): Gtk-CRITICAL **: 09:10:54.255: gtk_widget_get_window: assertion 'GTK_IS_WIDGET (widget)' failed (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:54.255: g_object_ref: assertion 'G_IS_OBJECT (object)' failed (spacefm:233252): Gtk-CRITICAL **: 09:10:54.630: gtk_widget_get_window: assertion 'GTK_IS_WIDGET (widget)' failed (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:54.631: g_object_ref: assertion 'G_IS_OBJECT (object)' failed (spacefm:233252): Gtk-CRITICAL **: 09:10:55.001: gtk_widget_get_window: assertion 'GTK_IS_WIDGET (widget)' failed (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:55.001: g_object_ref: assertion 'G_IS_OBJECT (object)' failed (spacefm:233252): Gdk-WARNING **: 09:10:55.011: losing last reference to undestroyed window (spacefm:233252): GLib-GObject-CRITICAL **: 09:10:55.011: g_object_unref: assertion '!object_already_finalized' failed Segmentation fault ```