Xfce menu plugin causes segfault against Xfdesktop

Daichi Kawahata daichi at xfce.org
Thu Oct 13 13:13:42 CEST 2005


On Thu, 13 Oct 2005 02:43:56 -0700
Brian J. Tarricone wrote:

> > The problem for me is that Xfce menu plugin causes segfault against
> > the xfdesktop while Xfce menu on the desktop works fine in ja_JP.EUC.
> 
> Well that's news to me.  It's hard for me to fix things if no one
> reports the problem ^_~.
> 
> > I'm not sure it's DnD related, in other words GTK+ problem,
> > but I decided to bump the GTK+/Glib version latest.
> 
> Not sure how it could be.  The menu is totally unrelated to the DnD.
> (Well, not totally, but I don't see how it could cause a crash.)
> 
> Anyway...  backtrace?

Here it is (xfdesktop_bt.log), another cosmetic problem I've been
having for these months is, the warning below keeps emitting at every
login,

    GLib-CRITICAL **: g_hash_table_insert: assertion `hash_table != NULL' failed

What's this?

PS. You can always shut the gcc up (xfdesktop_warnings.log).

Regards,
-- 
Daichi

Language Codes: http://www.w3.org/WAI/ER/IG/ert/iso639.htm
Country Codes: http://www.ics.uci.edu/pub/ietf/http/related/iso3166.txt
-------------- next part --------------
(xfdesktop:1013949): libxfcegui4-CRITICAL **: netk_screen_get_active_workspace: assertion `NETK_IS_SCREEN (screen)' failed

(xfdesktop:1013949): libxfcegui4-CRITICAL **: netk_workspace_get_number: assertion `NETK_IS_WORKSPACE (space)' failed
bash: line 46: 1013949 Segmentation fault      (core dumped) xfdesktop

GNU gdb 5.3
[...]
This GDB was configured as "mips-sgi-irix6.5"...
Core was generated by `xfdesktop'.
Program terminated with signal 11, Segmentation fault.
[...]
#0  0x100119d8 in xfce_desktop_drag_motion (widget=0x1004bf80, context=0x10138b00, x=590, y=274, time=0) at xfce-desktop.c:2219
2219        *row = y - desktop->priv->icon_workspaces[idx]->yorigin - CELL_PADDING;
(gdb) bt
#0  0x100119d8 in xfce_desktop_drag_motion (widget=0x1004bf80, context=0x10138b00, x=590, y=274, time=0) at xfce-desktop.c:2219
#1  0x5fd2eb64 in _gtk_marshal_BOOLEAN__OBJECT_INT_INT_UINT (closure=0x112, return_value=0x7ffb7648, n_param_values=2454267027, param_values=0x7ffb7788, 
    invocation_hint=0x1026c570, marshal_data=0x100118f8) at gtkmarshalers.c:330
#2  0x5f963538 in g_closure_invoke (closure=0x10044f68, return_value=0x7ffb7648, n_param_values=5, param_values=0x7ffb7788, invocation_hint=0x7ffb7668)
    at gclosure.c:490
#3  0x5f9795c0 in signal_emit_unlocked_R (node=0x10043b90, detail=0, instance=0x1004bf80, emission_return=0x7ffb7730, instance_and_params=0x7ffb7788)
    at gsignal.c:2528
#4  0x5f97b0e4 in g_signal_emit_valist (instance=0x1004bf80, signal_id=0, detail=0, var_args=0x7ffb7a10 "") at gsignal.c:2259
#5  0x5f97f6e4 in g_signal_emit_by_name (instance=0x1004bf80, detailed_signal=0x5fed3d50 "drag_motion") at gsignal.c:2317
#6  0x5fc823a0 in gtk_drag_dest_motion (widget=0x1004bf80, context=0x10138b00, x=590, y=274, time=855904900) at gtkdnd.c:1950
#7  0x5fc81990 in gtk_drag_find_widget (widget=0x1004bf80, data=0x7ffb7b58) at gtkdnd.c:1654
#8  0x5fc81b54 in _gtk_drag_dest_handle_event (toplevel=0x1004bf80, event=0x10061c08) at gtkdnd.c:1339
#9  0x5fd2b468 in gtk_main_do_event (event=0x10061c08) at gtkmain.c:1440
#10 0x5fb28938 in gdk_event_dispatch (source=0x0, callback=0x1004bf80, user_data=0x10138b00) at gdkevents-x11.c:2294
#11 0x041f0ae4 in g_main_context_dispatch (context=0x1003da70) at gmain.c:1934
#12 0x041f5234 in g_main_context_iterate (context=0x1003da70, block=1, dispatch=1, self=0x24e) at gmain.c:2565
#13 0x041f57bc in g_main_loop_run (loop=0x1011f340) at gmain.c:2769
#14 0x5fd2a2a4 in gtk_main () at gtkmain.c:985
#15 0x100078f0 in main (argc=1, argv=0x7ffb7e84) at main.c:304
(gdb) f 0
#0  0x100119d8 in xfce_desktop_drag_motion (widget=0x1004bf80, context=0x10138b00, x=590, y=274, time=0) at xfce-desktop.c:2219
2219        *row = y - desktop->priv->icon_workspaces[idx]->yorigin - CELL_PADDING;
(gdb) info locals 
active_ws_num = 0
row = 2147186568
col = 274
cell_highlight = (GdkRectangle *) 0x0
-------------- next part --------------
On IRIX 6.5.22m, gcc 4.0.1 with -O2 -g -W -Wall -Wformat=2 -fno-var-tracking

Here we go,

xfdesktop-common.c: In function 'is_backdrop_list':
xfdesktop-common.c:54: warning: ordered comparison of pointer with integer zero
xfdesktop-common.c: In function 'pixbuf_loader_size_cb':
xfdesktop-common.c:92: warning: unused parameter 'loader'

backdrop_settings.c: In function 'on_drag_data_received':
backdrop_settings.c:390: warning: unused parameter 'w'
backdrop_settings.c:391: warning: unused parameter 'x'
backdrop_settings.c:391: warning: unused parameter 'y'
backdrop_settings.c:392: warning: unused parameter 'info'
backdrop_settings.c: In function 'file_entry_lost_focus':
backdrop_settings.c:472: warning: unused parameter 'ev'
backdrop_settings.c: In function 'browse_cb':
backdrop_settings.c:513: warning: unused parameter 'b'
backdrop_settings.c: In function 'edit_list_cb':
backdrop_settings.c:607: warning: unused parameter 'w'
backdrop_settings.c: In function 'new_list_cb':
backdrop_settings.c:613: warning: unused parameter 'w'
backdrop_settings.c: In function 'hscale_format':
backdrop_settings.c:759: warning: unused parameter 'w'
backdrop_settings.c:759: warning: unused parameter 'user_data'
backdrop_settings.c: In function 'run_dialog_cb':
backdrop_settings.c:1264: warning: unused parameter 'btn'
backdrop_settings.c: In function 'g_module_check_init':
backdrop_settings.c:1313: warning: unused parameter 'gmodule'

backdrop-mgr.c: In function 'reload_xfdesktop_trigger':
backdrop-mgr.c:67: warning: unused parameter 'w'
backdrop-mgr.c:67: warning: unused parameter 'user_data'
backdrop-mgr.c: In function 'add_dir':
backdrop-mgr.c:85: warning: unused parameter 'parent'
backdrop-mgr.c: In function 'read_file':
backdrop-mgr.c:134: warning: unused parameter 'parent'
backdrop-mgr.c: In function 'on_drag_data_received':
backdrop-mgr.c:316: warning: unused parameter 'x'
backdrop-mgr.c:316: warning: unused parameter 'y'
backdrop-mgr.c:317: warning: unused parameter 'info'
backdrop-mgr.c: In function 'list_remove_cb':
backdrop-mgr.c:397: warning: unused parameter 'b'
backdrop-mgr.c: In function 'list_add_cb':
backdrop-mgr.c:424: warning: unused parameter 'b'
backdrop-mgr.c: In function 'edit_list_file':
backdrop-mgr.c:710: warning: pointer targets in passing argument 1 of 'strcmp' differ in signedness

menu_settings.c: In function '_edit_menu_cb':
menu_settings.c:146: warning: unused parameter 'w'
menu_settings.c:146: warning: unused parameter 'user_data'

main.c: In function 'quit':
main.c:64: warning: unused parameter 'force'
main.c: In function 'session_die':
main.c:73: warning: unused parameter 'user_data'
main.c: In function 'scroll_cb':
main.c:145: warning: unused parameter 'user_data'
main.c: In function 'button_cb':
main.c:152: warning: unused parameter 'user_data'
main.c: In function 'reload_idle_cb':
main.c:172: warning: unused parameter 'data'
main.c: In function 'client_message_received':
main.c:180: warning: unused parameter 'user_data'

menu.c: In function 'menu_settings_changed':
menu.c:186: warning: unused parameter 'user_data'

settings.c: In function 'client_event_filter':
settings.c:52: warning: unused parameter 'event'
settings.c:52: warning: unused parameter 'data'
settings.c: In function 'watch_cb':
settings.c:63: warning: unused parameter 'mask'
settings.c:63: warning: unused parameter 'cb_data'
settings.c: In function 'notify_cb':
settings.c:74: warning: unused parameter 'name'
settings.c:75: warning: unused parameter 'data'

windowlist.c: In function 'activate_window':
windowlist.c:84: warning: unused parameter 'w'
windowlist.c: In function 'window_destroyed_cb':
windowlist.c:93: warning: unused parameter 'where_the_object_was'
windowlist.c: In function 'windowlist_settings_changed':
windowlist.c:350: warning: unused parameter 'client'
windowlist.c:351: warning: unused parameter 'user_data'

xfce-backdrop.c: In function 'xfce_backdrop_get_type':
xfce-backdrop.c:209: warning: missing initializer
xfce-backdrop.c:209: warning: (near initialization for 'backdrop_info.value_table')

xfce-desktop.c: In function 'xfce_desktop_icon_add':
xfce-desktop.c:264: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'xfce_desktop_icon_remove':
xfce-desktop.c:293: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'find_icon_below_from_hash':
xfce-desktop.c:319: warning: unused parameter 'key'
xfce-desktop.c: In function 'xfce_desktop_icon_paint_delayed':
xfce-desktop.c:467: warning: unused parameter 'changed_mask'
xfce-desktop.c:468: warning: unused parameter 'new_state'
xfce-desktop.c: In function 'backdrop_changed_cb':
xfce-desktop.c:697: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'screen_size_changed_cb':
xfce-desktop.c:795: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'handle_xinerama_stretch':
xfce-desktop.c:816: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'handle_xinerama_unstretch':
xfce-desktop.c:847: warning: comparison between signed and unsigned
xfce-desktop.c:857: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'load_initial_settings':
xfce-desktop.c:901: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'desktop_style_set_cb':
xfce-desktop.c:1044: warning: unused parameter 'old'
xfce-desktop.c:1044: warning: unused parameter 'user_data'
xfce-desktop.c: In function 'desktop_get_workarea_single':
xfce-desktop.c:1108: warning: comparison between signed and unsigned
xfce-desktop.c:1108: warning: comparison of unsigned expression >= 0 is always true
xfce-desktop.c:1110: warning: comparison between signed and unsigned
xfce-desktop.c:1110: warning: comparison of unsigned expression >= 0 is always true
xfce-desktop.c:1112: warning: comparison between signed and unsigned
xfce-desktop.c:1112: warning: comparison of unsigned expression >= 0 is always true
xfce-desktop.c:1114: warning: comparison between signed and unsigned
xfce-desktop.c:1114: warning: comparison of unsigned expression >= 0 is always true
xfce-desktop.c: In function 'desktop_get_workarea':
xfce-desktop.c:1170: warning: comparison between signed and unsigned
xfce-desktop.c:1174: warning: comparison between signed and unsigned
xfce-desktop.c:1185: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'workspace_changed_cb':
xfce-desktop.c:1199: warning: unused parameter 'netk_screen'
xfce-desktop.c: In function 'check_position_really_free':
xfce-desktop.c:1337: warning: unused parameter 'key'
xfce-desktop.c: In function 'window_created_cb':
xfce-desktop.c:1545: warning: unused parameter 'netk_screen'
xfce-desktop.c: In function 'xfce_desktop_get_type':
xfce-desktop.c:1578: warning: missing initializer
xfce-desktop.c:1578: warning: (near initialization for 'desktop_info.value_table')
xfce-desktop.c: In function 'xfce_desktop_realize':
xfce-desktop.c:1700: warning: comparison between signed and unsigned
xfce-desktop.c:1710: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'xfce_desktop_unrealize':
xfce-desktop.c:1770: warning: comparison between signed and unsigned
xfce-desktop.c: In function 'check_icon_clicked':
xfce-desktop.c:1822: warning: unused parameter 'key'
xfce-desktop.c: In function 'action_menu_deactivate_cb':
xfce-desktop.c:1843: warning: unused parameter 'user_data'
xfce-desktop.c: In function 'xfce_desktop_expose':
xfce-desktop.c:1958: warning: unused parameter 'user_data'
xfce-desktop.c: In function 'check_icon_needs_repaint':
xfce-desktop.c:1979: warning: unused parameter 'key'
xfce-desktop.c: In function 'xfce_desktop_drag_leave':
xfce-desktop.c:2302: warning: unused parameter 'time'
xfce-desktop.c: In function 'xfce_desktop_settings_changed':
xfce-desktop.c:2501: warning: comparison between signed and unsigned
xfce-desktop.c:2442: warning: unused parameter 'client'
xfce-desktop.c: In function 'workspace_created_cb':
xfce-desktop.c:1270: warning: 'w' may be used uninitialized in this function
xfce-desktop.c:1270: warning: 'yo' may be used uninitialized in this function
xfce-desktop.c:1270: warning: 'xo' may be used uninitialized in this function
xfce-desktop.c:1270: warning: 'h' may be used uninitialized in this function

desktop-menu.c: In function 'itheme_changed_cb':
desktop-menu.c:82: warning: unused parameter 'itheme'
desktop-menu.c:82: warning: unused parameter 'user_data'
desktop-menu.c: In function 'g_module_check_init':
desktop-menu.c:405: warning: unused parameter 'module'
desktop-menu.c: In function 'g_module_unload':
desktop-menu.c:430: warning: unused parameter 'module'

desktop-menu-cache.c: In function 'dmc_free_tree_data':
desktop-menu-cache.c:92: warning: unused parameter 'data'

desktop-menu-file.c: In function '_do_builtin':
desktop-menu-file.c:109: warning: unused parameter 'mi'
desktop-menu-file.c: In function 'menu_file_xml_start':
desktop-menu-file.c:148: warning: unused parameter 'context'
desktop-menu-file.c:150: warning: unused parameter 'error'
desktop-menu-file.c: In function 'menu_file_xml_end':
desktop-menu-file.c:517: warning: unused parameter 'context'
desktop-menu-file.c:518: warning: unused parameter 'error'
desktop-menu-file.c: In function 'desktop_menu_file_parse':
desktop-menu-file.c:544: warning: unused parameter 'is_root'
desktop-menu-file.c: In function 'file_need_update_check_ht':
desktop-menu-file.c:657: warning: comparison between signed and unsigned

desktop-menu-dentry.c: In function '_prune_generic_paths':
desktop-menu-dentry.c:123: warning: comparison between signed and unsigned
desktop-menu-dentry.c:125: warning: comparison between signed and unsigned
desktop-menu-dentry.c:133: warning: comparison between signed and unsigned
desktop-menu-dentry.c: In function 'menu_dentry_parse_dentry':
desktop-menu-dentry.c:409: warning: comparison between signed and unsigned
desktop-menu-dentry.c: In function 'dentry_need_update_check_ht':
desktop-menu-dentry.c:673: warning: comparison between signed and unsigned

desktop-menuspec.c: In function 'tree_add_orphans':
desktop-menuspec.c:146: warning: unused parameter 'data'
desktop-menuspec.c:146: warning: unused parameter 'user_data'
desktop-menuspec.c: In function 'menuspec_xml_start':
desktop-menuspec.c:239: warning: unused parameter 'context'
desktop-menuspec.c:241: warning: unused parameter 'error'
desktop-menuspec.c: In function 'menuspec_xml_end':
desktop-menuspec.c:368: warning: unused parameter 'context'
desktop-menuspec.c:369: warning: unused parameter 'error'

desktop-menu-plugin.c: In function 'dmp_set_orientation':
desktop-menu-plugin.c:171: warning: unused parameter 'orientation'
desktop-menu-plugin.c: In function 'dmp_free':
desktop-menu-plugin.c:214: warning: unused parameter 'plugin'
desktop-menu-plugin.c: In function 'entry_focus_out_cb':
desktop-menu-plugin.c:417: warning: unused parameter 'evt'
desktop-menu-plugin.c: In function 'dmp_button_title_focus_out_cb':
desktop-menu-plugin.c:599: warning: unused parameter 'evt'
desktop-menu-plugin.c: In function 'dmp_edit_menu_clicked_cb':
desktop-menu-plugin.c:615: warning: unused parameter 'w'
desktop-menu-plugin.c: In function 'dmp_options_dlg_response_cb':
desktop-menu-plugin.c:640: warning: unused parameter 'response'

about_dialog.c: In function 'about_cb':
about_dialog.c:28: warning: unused parameter 'widget'

add_dialog.c: In function 'addentry_option_launcher_cb':
add_dialog.c:51: warning: unused parameter 'widget'
add_dialog.c: In function 'addentry_option_menu_cb':
add_dialog.c:65: warning: unused parameter 'widget'
add_dialog.c: In function 'addentry_option_separator_cb':
add_dialog.c:79: warning: unused parameter 'widget'
add_dialog.c: In function 'addentry_option_title_cb':
add_dialog.c:93: warning: unused parameter 'widget'
add_dialog.c: In function 'addentry_option_builtin_cb':
add_dialog.c:107: warning: unused parameter 'widget'
add_dialog.c: In function 'browse_command_clicked_cb':
add_dialog.c:121: warning: unused parameter 'widget'
add_dialog.c: In function 'browse_icon_clicked_cb':
add_dialog.c:127: warning: unused parameter 'widget'
add_dialog.c: In function 'add_entry_cb':
add_dialog.c:136: warning: unused parameter 'widget'

add_menu_dialog.c: In function 'addmenu_option_file_cb':
add_menu_dialog.c:46: warning: unused parameter 'widget'
add_menu_dialog.c: In function 'addmenu_option_system_cb':
add_menu_dialog.c:57: warning: unused parameter 'widget'
add_menu_dialog.c: In function 'browse_file_clicked_cb':
add_menu_dialog.c:68: warning: unused parameter 'widget'
add_menu_dialog.c: In function 'add_menu_cb':
add_menu_dialog.c:77: warning: unused parameter 'widget'

dnd.c: In function 'treeview_drag_data_get_cb':
dnd.c:28: warning: unused parameter 'widget'
dnd.c:29: warning: unused parameter 'time'
dnd.c: In function 'treeview_drag_data_rcv_cb':
dnd.c:107: warning: pointer targets in passing argument 1 of 'g_str_has_prefix' differ in signedness
dnd.c:108: warning: pointer targets in passing argument 1 of 'g_build_filename' differ in signedness
dnd.c:109: warning: pointer targets in passing argument 1 of 'g_str_has_prefix' differ in signedness
dnd.c:110: warning: pointer targets in passing argument 1 of 'g_build_filename' differ in signedness
dnd.c:112: warning: pointer targets in passing argument 1 of 'g_strdup' differ in signedness
dnd.c:157: warning: pointer targets in passing argument 1 of 'xfce_desktop_entry_new_from_data' differ in signedness
dnd.c:47: warning: unused parameter 'info'

edit_dialog.c: In function 'browse_command_clicked_cb':
edit_dialog.c:41: warning: unused parameter 'widget'
edit_dialog.c: In function 'browse_icon_clicked_cb':
edit_dialog.c:47: warning: unused parameter 'widget'

menueditor.c: In function 'delete_main_window_cb':
menueditor.c:108: warning: unused parameter 'event'
menueditor.c: In function 'icon_theme_update_foreach_func':
menueditor.c:153: warning: unused parameter 'path'
menueditor.c: In function 'icon_theme_changed_cb':
menueditor.c:183: warning: unused parameter 'icon_theme'
menueditor.c: In function 'treeview_cursor_changed_cb':
menueditor.c:200: warning: unused parameter 'treeview'
menueditor.c: In function 'treeview_activate_cb':
menueditor.c:292: warning: unused parameter 'widget'
menueditor.c:292: warning: unused parameter 'path'
menueditor.c:292: warning: unused parameter 'col'
menueditor.c: In function 'new_menu_cb':
menueditor.c:301: warning: unused parameter 'widget'
menueditor.c: In function 'save_menu_cb':
menueditor.c:470: warning: unused parameter 'widget'
menueditor.c: In function 'saveas_menu_cb':
menueditor.c:479: warning: unused parameter 'widget'
menueditor.c: In function 'close_menu_cb':
menueditor.c:524: warning: unused parameter 'widget'
menueditor.c: In function 'popup_menu_edit_cb':
menueditor.c:579: warning: unused parameter 'widget'
menueditor.c: In function 'delete_entry_cb':
menueditor.c:585: warning: unused parameter 'widget'
menueditor.c: In function 'entry_up_cb':
menueditor.c:615: warning: unused parameter 'widget'
menueditor.c: In function 'entry_down_cb':
menueditor.c:662: warning: unused parameter 'widget'
menueditor.c: In function 'collapse_tree_cb':
menueditor.c:764: warning: unused parameter 'widget'
menueditor.c: In function 'expand_tree_cb':
menueditor.c:774: warning: unused parameter 'widget'

utils.c: In function 'menu_file_xml_start':
utils.c:204: warning: unused parameter 'context'
utils.c:206: warning: unused parameter 'error'
utils.c: In function 'menu_file_xml_end':
utils.c:410: warning: unused parameter 'context'
utils.c:410: warning: unused parameter 'error'



More information about the Xfce4-dev mailing list