[Pkg-games-ubuntu] [Bug 1208625] Re: freeciv-gtk2 crashes under Unity when using menubar in cities report

Jacob Nevins 1208625 at bugs.launchpad.net
Sun Sep 15 12:44:32 UTC 2013


A few weeks' crash-free running with "UBUNTU_MENUPROXY= freeciv-gtk2"
has pretty much proven that this only happens with appmenu active.

I seem not to have attached the backtrace I intended to. Here it is
(from a .crash file on the user's system, manually apport-retrace'd by
me).

Stacktrace:
 #0  0x00007f9afedfb037 in __GI_raise (sig=sig at entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
         resultvar = 0
         pid = 21498
         selftid = 21498
 #1  0x00007f9afedfe698 in __GI_abort () at abort.c:90
         save_stage = 2
         act = {__sigaction_handler = {sa_handler = 0x7fff050e66e0, sa_sigaction = 0x7fff050e66e0}, sa_mask = {__val = {140733278217856, 138, 140303713758357, 4294967301, 0, 138, 140303677566184, 66998496, 138, 140303684891056, 140303713785637, 161, 51, 140303681476504, 1, 0}}, sa_flags = 0, sa_restorer = 0x20}
         sigs = {__val = {32, 0 <repeats 15 times>}}
 #2  0x00007f9aff1f73b6 in g_assertion_message (domain=domain at entry=0x7f9aff4c0a4e "GLib-GObject", file=file at entry=0x7f9aff4c5808 "/build/buildd/glib2.0-2.36.0/./gobject/gsignal.c", line=line at entry=646, func=func at entry=0x7f9aff4c71b0 <__PRETTY_FUNCTION__.12149> "handler_unref_R", message=<optimised out>) at /build/buildd/glib2.0-2.36.0/./glib/gtestutils.c:1912
         lstr = "646\000\377\177\000\000\320b\016\005\377\177\000\000\000,\376\003\000\000\000\000\061lL\377\232\177\000"
         s = 0x3fe50e0 "P\270\067\004"
 #3  0x00007f9aff1f7914 in g_assertion_message_expr (domain=domain at entry=0x7f9aff4c0a4e "GLib-GObject", file=file at entry=0x7f9aff4c5808 "/build/buildd/glib2.0-2.36.0/./gobject/gsignal.c", line=line at entry=646, func=func at entry=0x7f9aff4c71b0 <__PRETTY_FUNCTION__.12149> "handler_unref_R", expr=expr at entry=0x7f9aff4c6c31 "hlist->tail_after == handler") at /build/buildd/glib2.0-2.36.0/./glib/gtestutils.c:1923
         s = <optimised out>
 #4  0x00007f9aff493521 in handler_unref_R (handler=<optimised out>, instance=<optimised out>, signal_id=<optimised out>) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:646
 No locals.
 #5  0x00007f9aff4a8de2 in handler_unref_R (handler=0x431ca30, instance=0x407c210, signal_id=1) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:646
         _g_boolean_var_ = 0
         hlist = <optimised out>
 #6  g_signal_handler_disconnect (instance=0x407c210, handler_id=<optimised out>) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:2590
         handler = 0x431ca30
         signal_id = 1
         __PRETTY_FUNCTION__ = "g_signal_handler_disconnect"
 #7  0x00007f9af16db5a7 in ?? () from /home/jtn/apport-sandbox/usr/lib/x86_64-linux-gnu/libdbusmenu-gtk.so.4
 No symbol table info available.
 #8  0x00007f9af16db68e in ?? () from /home/jtn/apport-sandbox/usr/lib/x86_64-linux-gnu/libdbusmenu-gtk.so.4
 No symbol table info available.
 #9  0x00007f9aff1b9a90 in g_datalist_clear (datalist=0x0) at /build/buildd/glib2.0-2.36.0/./glib/gdataset.c:277
         data = 0x405fb70
         i = 0
         __PRETTY_FUNCTION__ = "g_datalist_clear"
 #10 0x00007f9aff49d538 in g_object_unref (_object=0x40d5400) at /build/buildd/glib2.0-2.36.0/./gobject/gobject.c:3024
         weak_locations = <optimised out>
         object = 0x40d5400
         old_ref = 1
         __PRETTY_FUNCTION__ = "g_object_unref"
 #11 0x00007f9af14bafa5 in ?? () from /home/jtn/apport-sandbox/usr/lib/x86_64-linux-gnu/libdbusmenu-glib.so.4
 No symbol table info available.
 #12 0x00007f9aff49d4a4 in g_object_unref (_object=0x3fe2c00) at /build/buildd/glib2.0-2.36.0/./gobject/gobject.c:2987
         weak_locations = 0x0
         object = 0x3fe2c00
         old_ref = <optimised out>
         __PRETTY_FUNCTION__ = "g_object_unref"
 #13 0x00007f9aff1c3bd3 in g_hash_table_remove_all_nodes (hash_table=0x405dea0, notify=<optimised out>) at /build/buildd/glib2.0-2.36.0/./glib/ghash.c:500
         i = <optimised out>
         key = <optimised out>
         value = 0x3fe2c00
 #14 0x00007f9aff1c4a81 in g_hash_table_remove_all (hash_table=hash_table at entry=0x405dea0) at /build/buildd/glib2.0-2.36.0/./glib/ghash.c:1347
         __PRETTY_FUNCTION__ = "g_hash_table_remove_all"
 #15 0x00007f9aff1c4aee in g_hash_table_destroy (hash_table=0x405dea0) at /build/buildd/glib2.0-2.36.0/./glib/ghash.c:1051
         __PRETTY_FUNCTION__ = "g_hash_table_destroy"
 #16 0x00007f9af14c19a7 in ?? () from /home/jtn/apport-sandbox/usr/lib/x86_64-linux-gnu/libdbusmenu-glib.so.4
 No symbol table info available.
 #17 0x00007f9aff49d538 in g_object_unref (_object=0x3e659b0) at /build/buildd/glib2.0-2.36.0/./gobject/gobject.c:3024
         weak_locations = <optimised out>
         object = 0x3e659b0
         old_ref = 1
         __PRETTY_FUNCTION__ = "g_object_unref"
 #18 0x00007f9af18e4d75 in ?? () from /home/jtn/apport-sandbox/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/menuproxies/libappmenu.so
 No symbol table info available.
 #19 0x00007f9af18e4dd9 in ?? () from /home/jtn/apport-sandbox/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/menuproxies/libappmenu.so
 No symbol table info available.
 #20 0x00007f9aff498620 in g_closure_invoke (closure=0x415a0b0, return_value=0x0, n_param_values=1, param_values=0x7fff050e66e0, invocation_hint=0x7fff050e6680) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:777
         marshal = 0x7f9aff49a450 <g_cclosure_marshal_VOID__VOID>
         marshal_data = 0x0
         in_marshal = 0
         real_closure = 0x415a090
         __PRETTY_FUNCTION__ = "g_closure_invoke"
 #21 0x00007f9aff4a9f00 in signal_emit_unlocked_R (node=node at entry=0x215ff50, detail=detail at entry=0, instance=instance at entry=0x3ed66c0, emission_return=emission_return at entry=0x0, instance_and_params=instance_and_params at entry=0x7fff050e66e0) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3584
         tmp = <optimised out>
         handler = 0x3efb410
         accumulator = 0x0
         emission = {next = 0x7fff050e6b70, instance = 0x3ed66c0, ihint = {signal_id = 15, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4}
         class_closure = 0x2171710
         hlist = 0x3efb410
         handler_list = 0x3efb410
         return_accu = 0x0
         accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         signal_id = 15
         max_sequential_handler_number = 141382
         return_value_altered = 1
 #22 0x00007f9aff4b1d11 in g_signal_emit_valist (instance=0x3ed66c0, signal_id=<optimised out>, detail=0, var_args=var_args at entry=0x7fff050e6928) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3328
         instance_and_params = 0x7fff050e66e0
         signal_return_type = 4
         param_values = 0x7fff050e66f8
         node = 0x215ff50
         i = <optimised out>
         n_params = 0
         __PRETTY_FUNCTION__ = "g_signal_emit_valist"
 #23 0x00007f9aff4b1f92 in g_signal_emit (instance=instance at entry=0x3ed66c0, signal_id=<optimised out>, detail=detail at entry=0) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384
         var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fff050e6a00, reg_save_area = 0x7fff050e6940}}
 #24 0x00007f9b00044aa7 in IA__gtk_widget_unmap (widget=0x3ed66c0) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkwidget.c:3454
 No locals.
 #25 IA__gtk_widget_unmap (widget=widget at entry=0x3ed66c0) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkwidget.c:3445
 No locals.
 #26 0x00007f9b00050cf0 in gtk_window_hide (widget=0x3ed66c0) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkwindow.c:4589
         window = 0x3ed66c0
 #27 0x00007f9aff498620 in g_closure_invoke (closure=0x225ab20, return_value=0x0, n_param_values=1, param_values=0x7fff050e6be0, invocation_hint=0x7fff050e6b80) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:777
         marshal = 0x7f9aff497280 <g_type_class_meta_marshal>
         marshal_data = 0xc0
         in_marshal = 0
         real_closure = 0x225ab00
         __PRETTY_FUNCTION__ = "g_closure_invoke"
 #28 0x00007f9aff4a9544 in signal_emit_unlocked_R (node=node at entry=0x2150380, detail=detail at entry=0, instance=instance at entry=0x3ed66c0, emission_return=emission_return at entry=0x0, instance_and_params=instance_and_params at entry=0x7fff050e6be0) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3514
         accumulator = 0x0
         emission = {next = 0x7fff050e70e0, instance = 0x3ed66c0, ihint = {signal_id = 13, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 35866176}
         class_closure = 0x225ab20
         hlist = 0x0
         handler_list = <optimised out>
         return_accu = 0x0
         accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         signal_id = 13
         max_sequential_handler_number = 141382
         return_value_altered = <optimised out>
 #29 0x00007f9aff4b1d11 in g_signal_emit_valist (instance=0x3ed66c0, signal_id=<optimised out>, detail=0, var_args=var_args at entry=0x7fff050e6e28) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3328
         instance_and_params = 0x7fff050e6be0
         signal_return_type = 4
         param_values = 0x7fff050e6bf8
         node = 0x2150380
         i = <optimised out>
         n_params = 0
         __PRETTY_FUNCTION__ = "g_signal_emit_valist"
 #30 0x00007f9aff4b1f92 in g_signal_emit (instance=instance at entry=0x3ed66c0, signal_id=<optimised out>, detail=detail at entry=0) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384
         var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fff050e6f00, reg_save_area = 0x7fff050e6e40}}
 #31 0x00007f9b0004b7ee in IA__gtk_widget_hide (widget=0x3ed66c0) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkwidget.c:3320
         toplevel = 0x3ed66c0
 #32 IA__gtk_widget_hide (widget=0x3ed66c0) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkwidget.c:3308
 No locals.
 #33 0x00007f9afff34eaf in IA__gtk_menu_popdown (menu=menu at entry=0x3cc04f0) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmenu.c:1682
         private = <optimised out>
         menu_shell = 0x3cc04f0
         __PRETTY_FUNCTION__ = "IA__gtk_menu_popdown"
 #34 0x00007f9afff35009 in gtk_menu_deactivate (menu_shell=0x3cc04f0) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmenu.c:4198
         parent = 0x3ec5020
 #35 0x00007f9aff49881b in _g_closure_invoke_va (closure=0x2751ce0, return_value=0x0, instance=0x3cc04f0, args=0x7fff050e7228, n_params=0, param_types=0x0) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:840
         marshal = 0x7f9aff496c80 <g_type_class_meta_marshalv>
         marshal_data = 0x340
         in_marshal = 1
         real_closure = 0x2751cc0
         __PRETTY_FUNCTION__ = "_g_closure_invoke_va"
 #36 0x00007f9aff4b12df in g_signal_emit_valist (instance=0x3cc04f0, signal_id=<optimised out>, detail=0, var_args=var_args at entry=0x7fff050e7228) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3234
         return_accu = 0x0
         accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         accumulator = 0x0
         emission = {next = 0x7fff050e7480, instance = 0x3cc04f0, ihint = {signal_id = 211, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 36136352}
         signal_id = 211
         instance_type = <optimised out>
         emission_return = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         rtype = 4
         static_scope = 0
         fastpath_handler = <optimised out>
         closure = 0x2751ce0
         run_type = G_SIGNAL_RUN_FIRST
         hlist = 0x0
         l = <optimised out>
         fastpath = 0
         instance_and_params = <optimised out>
         signal_return_type = <optimised out>
         param_values = <optimised out>
         node = 0x27520d0
         i = <optimised out>
         n_params = <optimised out>
         __PRETTY_FUNCTION__ = "g_signal_emit_valist"
 #37 0x00007f9aff4b1f92 in g_signal_emit (instance=<optimised out>, signal_id=<optimised out>, detail=<optimised out>) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384
         var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fff050e7300, reg_save_area = 0x7fff050e7240}}
 #38 0x00007f9aff49881b in _g_closure_invoke_va (closure=0x2751ce0, return_value=0x0, instance=0x3cc0830, args=0x7fff050e75c8, n_params=0, param_types=0x0) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:840
         marshal = 0x7f9aff496c80 <g_type_class_meta_marshalv>
         marshal_data = 0x340
         in_marshal = 1
         real_closure = 0x2751cc0
         __PRETTY_FUNCTION__ = "_g_closure_invoke_va"
 #39 0x00007f9aff4b12df in g_signal_emit_valist (instance=0x3cc0830, signal_id=<optimised out>, detail=0, var_args=var_args at entry=0x7fff050e75c8) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3234
         return_accu = 0x0
         accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         accumulator = 0x0
         emission = {next = 0x7fff050e7820, instance = 0x3cc0830, ihint = {signal_id = 211, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 36136352}
         signal_id = 211
         instance_type = <optimised out>
         emission_return = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         rtype = 4
         static_scope = 0
         fastpath_handler = <optimised out>
         closure = 0x2751ce0
         run_type = G_SIGNAL_RUN_FIRST
         hlist = 0x0
         l = <optimised out>
         fastpath = 0
         instance_and_params = <optimised out>
         signal_return_type = <optimised out>
         param_values = <optimised out>
         node = 0x27520d0
         i = <optimised out>
         n_params = <optimised out>
         __PRETTY_FUNCTION__ = "g_signal_emit_valist"
 #40 0x00007f9aff4b1f92 in g_signal_emit (instance=<optimised out>, signal_id=<optimised out>, detail=<optimised out>) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384
         var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fff050e76a0, reg_save_area = 0x7fff050e75e0}}
 #41 0x00007f9aff4988e7 in _g_closure_invoke_va (closure=0x2751ce0, return_value=0x0, instance=0x4181c60, args=0x7fff050e7968, n_params=0, param_types=0x0) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:840
         marshal = 0x7f9aff496c80 <g_type_class_meta_marshalv>
         marshal_data = 0x340
         in_marshal = 0
         real_closure = 0x2751cc0
         __PRETTY_FUNCTION__ = "_g_closure_invoke_va"
 #42 0x00007f9aff4b12df in g_signal_emit_valist (instance=0x4181c60, signal_id=<optimised out>, detail=0, var_args=var_args at entry=0x7fff050e7968) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3234
         return_accu = 0x0
         accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         accumulator = 0x0
         emission = {next = 0x7fff050e7c70, instance = 0x4181c60, ihint = {signal_id = 211, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 36136352}
         signal_id = 211
         instance_type = <optimised out>
         emission_return = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         rtype = 4
         static_scope = 0
         fastpath_handler = <optimised out>
         closure = 0x2751ce0
         run_type = G_SIGNAL_RUN_FIRST
         hlist = 0x0
         l = <optimised out>
         fastpath = 0
         instance_and_params = <optimised out>
         signal_return_type = <optimised out>
         param_values = <optimised out>
         node = 0x27520d0
         i = <optimised out>
         n_params = <optimised out>
         __PRETTY_FUNCTION__ = "g_signal_emit_valist"
 #43 0x00007f9aff4b1f92 in g_signal_emit (instance=<optimised out>, signal_id=<optimised out>, detail=<optimised out>) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384
         var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fff050e7a40, reg_save_area = 0x7fff050e7980}}
 #44 0x00007f9afff3e555 in IA__gtk_menu_shell_activate_item (menu_shell=0x4181c60, menu_item=0x3ac54d0, force_deactivate=<optimised out>) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmenushell.c:1366
         parent_menu_shell = 0x0
         slist = <optimised out>
         shells = 0x408db70
         deactivate = <optimised out>
         __PRETTY_FUNCTION__ = "IA__gtk_menu_shell_activate_item"
 #45 0x00007f9afff3e8fc in gtk_menu_shell_button_release (widget=0x4181c60, event=<optimised out>) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmenushell.c:801
         submenu = 0x0
         menu_item = 0x3ac54d0
         deactivate = 1
         menu_shell = 0x4181c60
         priv = 0x4181d90
 #46 0x00007f9afff2a929 in _gtk_marshal_BOOLEAN__BOXED (closure=0x21e0bd0, return_value=0x7fff050e7c30, n_param_values=<optimised out>, param_values=0x7fff050e7ce0, invocation_hint=<optimised out>, marshal_data=<optimised out>) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmarshalers.c:86
         callback = 0x7f9afff33150 <gtk_menu_button_release>
         cc = <optimised out>
         data1 = 0x4181c60
         data2 = <optimised out>
         v_return = <optimised out>
         __PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED"
 #47 0x00007f9aff498620 in g_closure_invoke (closure=0x21e0bd0, return_value=0x7fff050e7c30, n_param_values=2, param_values=0x7fff050e7ce0, invocation_hint=0x7fff050e7c80) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:777
         marshal = 0x7f9aff497280 <g_type_class_meta_marshal>
         marshal_data = 0x160
         in_marshal = 0
         real_closure = 0x21e0bb0
         __PRETTY_FUNCTION__ = "g_closure_invoke"
 #48 0x00007f9aff4a9af8 in signal_emit_unlocked_R (node=node at entry=0x2113550, detail=detail at entry=0, instance=instance at entry=0x4181c60, emission_return=emission_return at entry=0x7fff050e7db0, instance_and_params=instance_and_params at entry=0x7fff050e7ce0) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3622
         accumulator = 0x222e540
         emission = {next = 0x0, instance = 0x4181c60, ihint = {signal_id = 34, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 36136352}
         class_closure = 0x21e0bd0
         hlist = 0x0
         handler_list = 0x0
         return_accu = 0x7fff050e7c30
         accu = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         signal_id = 34
         max_sequential_handler_number = 141382
         return_value_altered = 0
 #49 0x00007f9aff4b1996 in g_signal_emit_valist (instance=0x4181c60, signal_id=<optimised out>, detail=0, var_args=var_args at entry=0x7fff050e7f38) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3338
         return_value = {g_type = 20, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
         error = 0x0
         rtype = 20
         static_scope = 0
         instance_and_params = 0x7fff050e7ce0
         signal_return_type = 20
         param_values = 0x7fff050e7cf8
         node = 0x2113550
         i = <optimised out>
         n_params = 1
         __PRETTY_FUNCTION__ = "g_signal_emit_valist"
 #50 0x00007f9aff4b1f92 in g_signal_emit (instance=instance at entry=0x4181c60, signal_id=<optimised out>, detail=detail at entry=0) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384
         var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fff050e8010, reg_save_area = 0x7fff050e7f50}}
 #51 0x00007f9b00043d9e in gtk_widget_event_internal (widget=widget at entry=0x4181c60, event=event at entry=0x3ec7900) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkwidget.c:5010
         signal_num = <optimised out>
         return_val = 0
 #52 0x00007f9b00044119 in IA__gtk_widget_event (widget=widget at entry=0x4181c60, event=event at entry=0x3ec7900) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkwidget.c:4807
         __PRETTY_FUNCTION__ = "IA__gtk_widget_event"
 #53 0x00007f9afff28ca4 in IA__gtk_propagate_event (widget=0x4181c60, event=0x3ec7900) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmain.c:2509
         tmp = <optimised out>
         handled_event = <optimised out>
         __PRETTY_FUNCTION__ = "IA__gtk_propagate_event"
 #54 0x00007f9afff2900b in IA__gtk_main_do_event (event=0x3ec7900) at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmain.c:1699
         event_widget = <optimised out>
         grab_widget = 0x3ac54d0
         window_group = <optimised out>
         rewritten_event = <optimised out>
         tmp_list = <optimised out>
         __PRETTY_FUNCTION__ = "IA__gtk_main_do_event"
 #55 0x00007f9affb9dccc in gdk_event_dispatch (source=source at entry=0x21cf760, callback=<optimised out>, user_data=<optimised out>) at /build/buildd/gtk+2.0-2.24.17/gdk/x11/gdkevents-x11.c:2403
         display = <optimised out>
         event = 0x3ec7900
 #56 0x00007f9aff1d4f05 in g_main_dispatch (context=0x22340a0) at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3054
         dispatch = 0x7f9affb9dc80 <gdk_event_dispatch>
         was_in_call = 0
         user_data = 0x0
         callback = 0x0
         cb_funcs = 0x0
         cb_data = 0x0
         current_source_link = {data = 0x21cf760, next = 0x0}
         need_destroy = <optimised out>
         source = 0x21cf760
         current = 0x2998520
         i = <optimised out>
 #57 g_main_context_dispatch (context=context at entry=0x22340a0) at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3630
 No locals.
 #58 0x00007f9aff1d5248 in g_main_context_iterate (context=0x22340a0, block=block at entry=1, dispatch=dispatch at entry=1, self=<optimised out>) at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3701
         max_priority = 2147483647
         timeout = 50
         some_ready = 1
         allocated_nfds = <optimised out>
         fds = 0x2d9ac90
         nfds = <optimised out>
 #59 0x00007f9aff1d56ba in g_main_loop_run (loop=0x2d2fc00) at /build/buildd/glib2.0-2.36.0/./glib/gmain.c:3895
         __PRETTY_FUNCTION__ = "g_main_loop_run"
 #60 0x00007f9afff27fe7 in IA__gtk_main () at /build/buildd/gtk+2.0-2.24.17/gtk/gtkmain.c:1271
         tmp_list = 0x0
         functions = 0x0
         init = <optimised out>
         loop = 0x2d2fc00
 #61 0x0000000000414f5f in ?? ()
 No symbol table info available.
 #62 0x000000000043803f in ?? ()
 No symbol table info available.
 #63 0x00007f9afede5ea5 in __libc_start_main (main=0x411dc0, argc=1, ubp_av=0x7fff050e85f8, init=<optimised out>, fini=<optimised out>, rtld_fini=<optimised out>, stack_end=0x7fff050e85e8) at libc-start.c:260
         result = <optimised out>
         unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, 8040319136070643534, 4267464, 140733278225904, 0, 0, -8040339604638519474, -8025117551350632626}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x5581d0, 0x7fff050e85f8}, data = {prev = 0x0, cleanup = 0x0, canceltype = 5603792}}}
         not_first_call = <optimised out>
 #64 0x0000000000411df1 in ?? ()
 No symbol table info available.
 #65 0x00007fff050e85e8 in ?? ()
 No symbol table info available.
 #66 0x000000000000001c in ?? ()
 No symbol table info available.
 #67 0x0000000000000001 in ?? ()
 No symbol table info available.
 #68 0x00007fff050e99bb in ?? ()
 No symbol table info available.
 #69 0x0000000000000000 in ?? ()
 No symbol table info available.

-- 
You received this bug notification because you are a member of
Debian/Ubuntu Games Team, which is subscribed to freeciv in Ubuntu.
https://bugs.launchpad.net/bugs/1208625

Title:
  freeciv-gtk2 crashes under Unity when using menubar in cities report

Status in Freeciv Game:
  New
Status in “freeciv” package in Ubuntu:
  New

Bug description:
  (Filing against freeciv initially, but may turn out to be a bug in
  appmenu-gtk or thereabouts.)

  On Ubuntu 13.04 with Unity, running the supplied Freeciv (2.3.2-1),
  using the menubar on the cities report (F4) -- not the individual city
  dialog -- can cause the freeciv-gtk2 client to crash (segfault).

  Originally noticed when changing production, but simply fiddling with the menubar will cause a crash sooner or later. Steps to reproduce:
  1. Start new game
  2. Found a city (select Settlers, press B)
  3. Open cities report (F4) and select the new city
  4. Repeatedly click on "Production" menu (bottom left), popping and unpopping it. Within about ten open/close cycles, the client crashes for me.

  Friend reports that this did not used to happen with the same workflow
  under Ubuntu 12.10 (which had the same version of Freeciv packaged) --
  it seems to be new with 13.04.

  There is some associated console spew [edited]:

  When the Production menu is opened, we tend to get three repeats of:
  (freeciv-gtk2:2466): LIBDBUSMENU-GTK-CRITICAL **: watch_submenu: assertion `GTK_IS_MENU_SHELL(menu)' failed

  Sometimes we also see the following correlated with menubar activity:
  (freeciv-gtk2:2466): GLib-GObject-CRITICAL **: g_closure_unref: assertion `closure->ref_count > 0' failed
  (freeciv-gtk2:2466): GLib-GObject-WARNING **: g_object_weak_unref: couldn't find weak ref 0x7fdbe02e4e40(0x9fd8058)

  or sometimes
  (freeciv-gtk2:2534): GLib-GObject-CRITICAL **: g_closure_ref: assertion `closure->ref_count > 0' failed

  I expect there are crash reports of this available on
  errors.ubuntu.com, but I don't currently have access to that.
  Backtraces I've seen have almost all frames in Gtk/dbusmenu/etc rather
  than freeciv proper.

  We've had trouble with Unity's menu-bar-stealing arrangements before
  (bug #743265). Tellingly, I cannot reproduce the crash if I launch
  Freeciv with "UBUNTU_MENUPROXY= freeciv-gtk2" (no crash in any of my
  experiments, including 30 cycles).

  As a result of the previous bug, this menu bar is decorated with the
  property "ubuntu-local" to tell appmenu-gtk/dbusmenu/etc to keep their
  hands off it. But the UBUNTU_MENUPROXY environment variable still
  makes a difference, suggesting that it's not *completely* ignoring
  this menubar. On the other hand, perhaps there's some bug in the way
  we set up this menubar that appmenu is tickling -- it doesn't seem to
  happen with any of the other "auxiliary" menubars (such as the Nations
  report).

To manage notifications about this bug go to:
https://bugs.launchpad.net/freeciv/+bug/1208625/+subscriptions



More information about the Pkg-games-ubuntu mailing list