Crash in gtk_object_expression_weak_ref_cb ()
Sysprof 46.alpha from gnome-nightly Flatpak
I had a trace file open, then I did Ctrl-O to open another trace file, which opened a new window, then I closed the original window. Shortly thereafter, I got this crash.
(gdb) list
917
918 self->object = NULL;
919
920 for (l = self->watches; l; l = l->next)
921 {
922 GtkObjectExpressionWatch *owatch = l->data;
923
924 owatch->notify (owatch->user_data);
925 }
926 }
(gdb) p l
$1 = 0xaaaaaaaaaaaaaaaa = {Cannot access memory at address 0xaaaaaaaaaaaaaaaa
(gdb) bt
#0 gtk_object_expression_weak_ref_cb (data=<optimized out>, object=<optimized out>) at ../gtk/gtkexpression.c:922
#1 0x00007f6b110c1e07 in weak_refs_notify (data=0x558d94e69f10) at ../gobject/gobject.c:3222
#2 0x00007f6b1114673f in g_data_set_internal (datalist=0x558d948b0d80, key_id=<optimized out>, new_data=<optimized out>, new_destroy_func=<optimized out>, dataset=0x0) at ../glib/gdataset.c:411
#3 0x00007f6b110c225f in g_object_real_dispose (object=0x558d948b0d70 [SysprofSamplesSection]) at ../gobject/gobject.c:1300
#4 0x00007f6b110c2ce0 in g_object_unref (_object=0x558d948b0d70) at ../gobject/gobject.c:3831
#5 g_object_unref (_object=0x558d948b0d70) at ../gobject/gobject.c:3742
#6 0x00007f6b1184e578 in stack_remove (stack=0x558d948ab200 [GtkStack], child=0x558d948b0d70 [SysprofSamplesSection], in_dispose=1) at ../gtk/gtkstack.c:1756
#7 0x00007f6b1184e66d in gtk_stack_dispose (obj=0x558d948ab200 [GtkStack]) at ../gtk/gtkstack.c:841
#8 0x00007f6b110c2ce0 in g_object_unref (_object=0x558d948ab200) at ../gobject/gobject.c:3831
#9 g_object_unref (_object=0x558d948ab200) at ../gobject/gobject.c:3742
#10 0x00007f6b118bb1ce in gtk_widget_unparent (widget=<optimized out>) at ../gtk/gtkwidget.c:2637
#11 0x00007f6b117eedbd in gtk_overlay_dispose (object=0x558d948a8390 [GtkOverlay]) at ../gtk/gtkoverlay.c:280
#12 0x00007f6b110c2ce0 in g_object_unref (_object=0x558d948a8390) at ../gobject/gobject.c:3831
#13 g_object_unref (_object=0x558d948a8390) at ../gobject/gobject.c:3742
#14 0x00007f6b118bb1ce in gtk_widget_unparent (widget=<optimized out>) at ../gtk/gtkwidget.c:2637
#15 0x00007f6b10f7ed4c in adw_toolbar_view_dispose (object=0x558d94881560 [AdwToolbarView]) at ../src/adw-toolbar-view.c:393
#16 0x00007f6b110c2ce0 in g_object_unref (_object=0x558d94881560) at ../gobject/gobject.c:3831
#17 g_object_unref (_object=0x558d94881560) at ../gobject/gobject.c:3742
#18 0x00007f6b118bb1ce in gtk_widget_unparent (widget=<optimized out>) at ../gtk/gtkwidget.c:2637
#19 0x00007f6b10f27c54 in adw_bin_dispose (object=0x558d94e59490 [AdwBin]) at ../src/adw-bin.c:58
#20 0x00007f6b110c2ce0 in g_object_unref (_object=0x558d94e59490) at ../gobject/gobject.c:3831
#21 g_object_unref (_object=0x558d94e59490) at ../gobject/gobject.c:3742
#22 0x00007f6b118bb1ce in gtk_widget_unparent (widget=<optimized out>) at ../gtk/gtkwidget.c:2637
#23 0x00007f6b10f55682 in adw_overlay_split_view_dispose (object=0x558d94e55ae0 [AdwOverlaySplitView]) at ../src/adw-overlay-split-view.c:835
#24 0x00007f6b110c2ce0 in g_object_unref (_object=0x558d94e55ae0) at ../gobject/gobject.c:3831
#25 g_object_unref (_object=0x558d94e55ae0) at ../gobject/gobject.c:3742
#26 0x00007f6b1135978e in g_property_action_dispose (object=0x558d9489d5c0 [GPropertyAction]) at ../gio/gpropertyaction.c:416
#27 0x00007f6b110c2ce0 in g_object_unref (_object=0x558d9489d5c0) at ../gobject/gobject.c:3831
#28 g_object_unref (_object=0x558d9489d5c0) at ../gobject/gobject.c:3742
#29 0x00007f6b11154532 in g_hash_table_remove_all_nodes (hash_table=hash_table@entry=0x7f6b00006a90, notify=notify@entry=1, destruction=destruction@entry=1) at ../glib/ghash.c:651
#30 0x00007f6b111550db in g_hash_table_remove_all_nodes (destruction=1, notify=1, hash_table=0x7f6b00006a90) at ../glib/ghash.c:573
#31 g_hash_table_unref (hash_table=0x7f6b00006a90) at ../glib/ghash.c:1433
#32 0x00007f6b11355e52 in g_simple_action_group_finalize (object=0x558d9485e220 [GtkApplicationWindowActions]) at ../gio/gsimpleactiongroup.c:254
#33 0x00007f6b110c2dc1 in g_object_unref (_object=0x558d9485e220) at ../gobject/gobject.c:3879
#34 g_object_unref (_object=0x558d9485e220) at ../gobject/gobject.c:3742
#35 0x00007f6b118e06ac in gtk_action_muxer_free_group (data=0x558d9485df70) at ../gtk/gtkactionmuxer.c:1028
#36 0x00007f6b11154532 in g_hash_table_remove_all_nodes (hash_table=hash_table@entry=0x558d946e4d80, notify=notify@entry=1, destruction=destruction@entry=1) at ../glib/ghash.c:651
#37 0x00007f6b111550db in g_hash_table_remove_all_nodes (destruction=1, notify=1, hash_table=0x558d946e4d80) at ../glib/ghash.c:573
#38 g_hash_table_unref (hash_table=0x558d946e4d80) at ../glib/ghash.c:1433
#39 0x00007f6b118e0fd3 in gtk_action_muxer_finalize (object=0x558d9469a1a0 [GtkActionMuxer]) at ../gtk/gtkactionmuxer.c:1060
#40 0x00007f6b110c2dc1 in g_object_unref (_object=0x558d9469a1a0) at ../gobject/gobject.c:3879
#41 g_object_unref (_object=0x558d9469a1a0) at ../gobject/gobject.c:3742
#42 0x00007f6b118e2350 in gtk_action_muxer_set_parent (parent=0x558d963bc400 [GtkActionMuxer], muxer=0x558d961c75d0 [GtkActionMuxer]) at ../gtk/gtkactionmuxer.c:1391
#43 gtk_action_muxer_set_parent (muxer=0x558d961c75d0 [GtkActionMuxer], parent=0x558d963bc400 [GtkActionMuxer]) at ../gtk/gtkactionmuxer.c:1379
#44 0x00007f6b118b8248 in _gtk_widget_update_parent_muxer (widget=widget@entry=0x558d9633bf70 [GtkLabel]) at ../gtk/gtkwidget.c:11012
#45 0x00007f6b118b8314 in gtk_widget_root (widget=0x558d9633bf70 [GtkLabel]) at ../gtk/gtkwidget.c:2473
#46 0x00007f6b118b848d in gtk_widget_forall (user_data=0x0, callback=0x7f6b118b8280 <gtk_widget_root>, widget=<optimized out>) at ../gtk/gtkwidget.c:12269
#47 gtk_widget_real_root (widget=<optimized out>) at ../gtk/gtkwidget.c:778
#48 0x00007f6b118b833f in gtk_widget_root (widget=0x558d96258330 [GtkBox]) at ../gtk/gtkwidget.c:2480
#49 0x00007f6b118b848d in gtk_widget_forall (user_data=0x0, callback=0x7f6b118b8280 <gtk_widget_root>, widget=<optimized out>) at ../gtk/gtkwidget.c:12269
#50 gtk_widget_real_root (widget=<optimized out>) at ../gtk/gtkwidget.c:778
#51 0x00007f6b118b833f in gtk_widget_root (widget=widget@entry=0x558d961ad2e0 [GtkTooltipWindow]) at ../gtk/gtkwidget.c:2480
#52 0x00007f6b118b8be8 in gtk_widget_reposition_after (widget=0x558d961ad2e0 [GtkTooltipWindow], parent=0x558d94638680 [SysprofWindow], previous_sibling=<optimized out>) at ../gtk/gtkwidget.c:6077
#53 0x00007f6b118b8d28 in gtk_widget_set_parent (widget=<optimized out>, parent=<optimized out>) at ../gtk/gtkwidget.c:6149
#54 0x00007f6b118a1254 in gtk_tooltip_window_set_relative_to (window=0x558d961ad2e0 [GtkTooltipWindow], relative_to=0x558d94638680 [SysprofWindow]) at ../gtk/gtktooltipwindow.c:500
#55 0x00007f6b1189f82c in gtk_tooltip_handle_event_internal (event_type=event_type@entry=GDK_ENTER_NOTIFY, surface=surface@entry=0x558d943323f0 [GdkWaylandToplevel], target_widget=<optimized out>, target_widget@entry=0x558d936aa840 [GtkColumnListView], dx=<optimized out>, dy=<optimized out>) at ../gtk/gtktooltip.c:974
#56 0x00007f6b118a0376 in _gtk_tooltip_handle_event (target=target@entry=0x558d936aa840 [GtkColumnListView], event=event@entry=0x558d95ae7cd0 [GdkCrossingEvent]) at ../gtk/gtktooltip.c:955
#57 0x00007f6b117ce4bf in gtk_main_do_event (event=0x558d95ae7cd0 [GdkCrossingEvent]) at ../gtk/gtkmain.c:1710
#58 0x00007f6b118c2110 in surface_event (surface=<optimized out>, event=<optimized out>, widget=<optimized out>) at ../gtk/gtkwindow.c:4771
#64 0x00007f6b110d94b3 in <emit signal 'event' on instance 0x558d943323f0 [GdkWaylandToplevel]> (instance=instance@entry=0x558d943323f0, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3582
#59 0x00007f6b11a4c22c in _gdk_marshal_BOOLEAN__POINTERv (closure=closure@entry=0x558d9517e070, return_value=return_value@entry=0x7ffd61e77f40, instance=instance@entry=0x558d943323f0, args=args@entry=0x7ffd61e78050, marshal_data=marshal_data@entry=0x0, n_params=n_params@entry=1, param_types=0x558d93707de0) at gdk/gdkmarshalers.c:302
#60 0x00007f6b11ad86c8 in gdk_surface_event_marshallerv (closure=0x558d9517e070, return_value=0x7ffd61e77f40, instance=0x558d943323f0, args=0x7ffd61e78050, marshal_data=0x0, n_params=1, param_types=0x558d93707de0) at ../gdk/gdksurface.c:461
#61 0x00007f6b110bd652 in _g_closure_invoke_va (closure=0x558d9517e070, return_value=0x7ffd61e77f40, instance=0x558d943323f0, args=0x7ffd61e78050, n_params=1, param_types=0x558d93707de0) at ../gobject/gclosure.c:897
#62 0x00007f6b110d27e3 in signal_emit_valist_unlocked (instance=instance@entry=0x558d943323f0, signal_id=signal_id@entry=216, detail=detail@entry=0, var_args=var_args@entry=0x7ffd61e78050) at ../gobject/gsignal.c:3423
#63 0x00007f6b110d93f1 in g_signal_emit_valist (instance=0x558d943323f0, signal_id=216, detail=0, var_args=0x7ffd61e78050) at ../gobject/gsignal.c:3262
#65 0x00007f6b11adc147 in gdk_surface_handle_event (event=event@entry=0x558d95ae7cd0 [GdkCrossingEvent]) at ../gdk/gdksurface.c:2939
#66 0x00007f6b11ab9dbd in _gdk_event_emit (event=event@entry=0x558d95ae7cd0 [GdkCrossingEvent]) at ../gdk/gdkevents.c:491
#67 0x00007f6b11a629d6 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at ../gdk/wayland/gdkeventsource.c:142
#68 0x00007f6b11167f17 in g_main_dispatch (context=context@entry=0x558d9328b4e0) at ../glib/gmain.c:3344
#69 0x00007f6b1116a037 in g_main_context_dispatch_unlocked (context=0x558d9328b4e0) at ../glib/gmain.c:4152
#70 g_main_context_iterate_unlocked (context=context@entry=0x558d9328b4e0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4217
#71 0x00007f6b1116a6f3 in g_main_context_iteration (context=context@entry=0x558d9328b4e0, may_block=may_block@entry=1) at ../glib/gmain.c:4282
#72 0x00007f6b11350e4d in g_application_run (application=application@entry=0x558d93298270 [SysprofApplication], argc=argc@entry=1, argv=argv@entry=0x7ffd61e78518) at ../gio/gapplication.c:2573
#73 0x0000558d926e0fc7 in main (argc=1, argv=0x7ffd61e78518) at ../src/sysprof/main.c:54