! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
crash in gtk_menu_set_reserve_toggle_size
Status:
RESOLVED: FIXED
Product:
Xfce4-panel
Component:
Launcher

Comments

Description olaf 2020-05-10 21:55:07 CEST
The current git.xfce.org#master crashes, even after 'mv ~/.config/xfce{,.old} ; reboot' ( 20200501T001541.c06df30f ):

Core was generated by `xfce4-panel'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  gtk_menu_set_reserve_toggle_size (menu=0x0, reserve_toggle_size=reserve_toggle_size@entry=0) at gtkmenu.c:6210
6210      GtkMenuPrivate *priv = menu->priv;
[Current thread is 1 (Thread 0x7fce6222f2c0 (LWP 2442))]
(gdb) bt
#0  0x00007fce609b8fea in gtk_menu_set_reserve_toggle_size (menu=0x0, reserve_toggle_size=reserve_toggle_size@entry=0) at gtkmenu.c:6210
#1  0x00007fce43dee47e in launcher_plugin_button_update_action_menu (plugin=0x558a2728a420 [XfceLauncherPlugin]) at launcher.c:1905
#2  0x00007fce43def5cd in launcher_plugin_set_property (object=0x558a2728a420 [XfceLauncherPlugin], prop_id=<optimized out>, value=<optimized out>, pspec=<optimized out>) at launcher.c:881
#3  0x00007fce5f6e272e in object_set_property (nqueue=0x558a270bc310, value=<optimized out>, pspec=0x558a2732a5f0 [GParamBoxed], object=0x558a2728a420 [XfceLauncherPlugin])
    at gobject.c:1439
#4  0x00007fce5f6e272e in g_object_setv (object=0x558a2728a420 [XfceLauncherPlugin], n_properties=<optimized out>, names=<optimized out>, values=<optimized out>) at gobject.c:2245
#5  0x00007fce5f6e36be in g_object_set_property (object=<optimized out>, property_name=<optimized out>, value=value@entry=0x7fffae1bc2f0) at gobject.c:2529
#6  0x00007fce6160d508 in xfconf_g_property_channel_notify
    (channel=channel@entry=0x558a27135380 [XfconfChannel], property=property@entry=0x7fce4402d430 "/plugins/plugin-17/items", value=value@entry=0x7fffae1bc340, user_data=user_data@entry=0x558a273270c0) at xfconf-binding.c:333
#7  0x00007fce6160d756 in xfconf_g_property_init
    (channel=channel@entry=0x558a27135380 [XfconfChannel], xfconf_property=xfconf_property@entry=0x7fce4402d430 "/plugins/plugin-17/items", xfconf_property_type=94051848071376, object=object@entry=0x558a2728a420 [XfceLauncherPlugin], object_property=<optimized out>, object_property_type=94051848071376) at xfconf-binding.c:392
#8  0x00007fce6160da66 in IA__xfconf_g_property_bind
    (channel=channel@entry=0x558a27135380 [XfconfChannel], xfconf_property=xfconf_property@entry=0x7fce4402d430 "/plugins/plugin-17/items", xfconf_property_type=<optimized out>, object=object@entry=0x558a2728a420, object_property=<optimized out>) at xfconf-binding.c:509
#9  0x00007fce43df33d6 in panel_properties_bind
    (channel=0x558a27135380 [XfconfChannel], object=0x558a2728a420 [XfceLauncherPlugin], property_base=0x558a270ca630 "/plugins/plugin-17", properties=<optimized out>, save_properties=0)
    at panel-xfconf.c:135
#10 0x00007fce43ded1db in launcher_plugin_construct (panel_plugin=0x558a2728a420 [XfceLauncherPlugin]) at launcher.c:1073
#11 0x00007fce5f6dab06 in _g_closure_invoke_va (closure=0x558a2708ade0, return_value=0x0, instance=0x558a2728a420, args=0x7fffae1bc720, n_params=0, param_types=0x0) at gclosure.c:867
#12 0x00007fce5f6f6744 in g_signal_emit_valist (instance=0x558a2728a420, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffae1bc720) at gsignal.c:3300
#13 0x00007fce5f6f6c8f in g_signal_emit (instance=instance@entry=0x558a2728a420, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3447
#14 0x00007fce60aff606 in gtk_widget_realize (widget=widget@entry=0x558a2728a420 [XfceLauncherPlugin]) at gtkwidget.c:5471
#15 0x00007fce60b040f8 in gtk_widget_set_parent (widget=widget@entry=0x558a2728a420 [XfceLauncherPlugin], parent=parent@entry=0x558a2723e560 [PanelItembar]) at gtkwidget.c:9595
#16 0x0000558a2598f9ac in panel_itembar_insert (itembar=0x558a2723e560 [PanelItembar], widget=widget@entry=0x558a2728a420 [XfceLauncherPlugin], position=position@entry=-1)
    at panel-itembar.c:1027
#17 0x0000558a25986f0f in panel_application_plugin_insert
    (application=application@entry=0x558a27155a30 [PanelApplication], window=window@entry=0x558a27199380 [XfcePanelWindow], name=name@entry=0x558a2722d030 "launcher", unique_id=unique_id@entry=17, arguments=arguments@entry=0x0, position=position@entry=-1) at panel-application.c:805
#18 0x0000558a2598827b in panel_application_load_real (application=0x558a27155a30 [PanelApplication]) at panel-application.c:424
#19 0x00007fce604963e8 in gdk_threads_dispatch_free (data=0x7fce44001980) at gdk.c:756
#20 0x00007fce5f3fd8c8 in g_source_callback_unref (cb_data=0x558a271c1140) at gmain.c:1547
#21 0x00007fce5f3ff104 in g_source_destroy_internal (source=0x558a270f5d50, context=0x558a26fad470, have_lock=1) at gmain.c:1236
#22 0x00007fce5f400f30 in g_main_dispatch (context=0x558a26fad470) at gmain.c:3166
#23 0x00007fce5f400f30 in g_main_context_dispatch (context=context@entry=0x558a26fad470) at gmain.c:3795
#24 0x00007fce5f401230 in g_main_context_iterate (context=0x558a26fad470, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3868
#25 0x00007fce5f401542 in g_main_loop_run (loop=0x558a27072710) at gmain.c:4064
#26 0x00007fce609a3bf5 in gtk_main () at gtkmain.c:1323
#27 0x0000558a259835e1 in main (argc=<optimized out>, argv=<optimized out>) at main.c:385
Comment 1 olaf 2020-05-11 10:41:14 CEST
Going back to git state of all packages from '2020-05-04' did not fix it. Unclear what causes this crash for me.

Looking at the code:
1879 launcher_plugin_button_update_action_menu (LauncherPlugin *plugin)
1904       plugin->action_menu = GTK_WIDGET (garcon_gtk_menu_get_desktop_actions_menu (item));
1905       gtk_menu_set_reserve_toggle_size (GTK_MENU (plugin->action_menu), FALSE);
1906       if (plugin->action_menu)
1907         {

Why is gtk_menu_set_reserve_toggle_size called prior the "if()"? This looks like a bug.
Comment 2 olaf 2020-05-15 17:02:59 CEST
Moving the call into "if(action_menu)" fixes the crash.
Comment 3 Git Bot editbugs 2020-05-27 12:30:23 CEST
Simon Steinbeiss referenced this bugreport in commit 4c12892c91d9106569cc80bca01663fee2d5de6b

launcher: Fix crash with actions menu (Bug #16823)

https://gitlab.xfce.org/xfce/xfce4-panel/commit/4c12892c91d9106569cc80bca01663fee2d5de6b
Comment 4 Simon Steinbeiss editbugs 2020-05-27 12:31:05 CEST
While I can't reproduce the crash this change makes sense for sanity's sake. Thanks!

Bug #16823

Reported by:
olaf
Reported on: 2020-05-10
Last modified on: 2020-05-27

People

Assignee:
Simon Steinbeiss
CC List:
1 user

Version

Version:
Unspecified

Attachments

Additional information