Crash in detach_page callback
Moving from downstream bug, I'm seeing a large number of crashes in libadwaita's detach_page callback:
Thread 1 (Thread 0x7f9e164e6d00 (LWP 7060)):
#0 0x00007f9e1b66a618 in G_IS_LIST_MODEL (ptr=0x1c0) at ../gio/glistmodel.h:38
__inst = 0x1c0
__t = 0x55d72f8b5da0 [None]
__r = <optimized out>
_g_boolean_var_17 = <optimized out>
__func__ = "g_list_model_items_changed"
#1 g_list_model_items_changed (list=0x1c0, position=position@entry=0, removed=removed@entry=1, added=added@entry=0) at ../gio/glistmodel.c:321
_g_boolean_var_17 = <optimized out>
__func__ = "g_list_model_items_changed"
#2 0x00007f9e1aa721a8 in detach_page (self=0x55d72fba37a0, page=0x55d72fc0e300, in_dispose=0) at ../src/adw-tab-view.c:1818
pos = 0
Python Exception <class 'gdb.error'>: value has been optimized out
Unfortunately that's the entire backtrace, which is pretty unfortunate, but good news is it's very easy to reproduce using kgx 45.beta:
- Run any slow command, like, say,
sleep 5
- Before the previous command finishes, run
exit
(which will be queued to execute when the previous command finishes) - When the slow command finishes, kgx will improperly display the Close Tab dialog (screenshot below). This is improper because this dialog was not displayed until after the "still running" command had already finished
- Click the Close button. kgx will crash.