[Bug 17247] New: gnome-terminal crashes if you start too many too quickly
bugzilla-daemon at bugzilla.ubuntu.com
bugzilla-daemon at bugzilla.ubuntu.com
Fri Oct 7 15:25:58 UTC 2005
Please do not reply to this email. You can add comments at
http://bugzilla.ubuntu.com/show_bug.cgi?id=17247
Ubuntu | gnome-terminal
Summary: gnome-terminal crashes if you start too many too quickly
Product: Ubuntu
Version: unspecified
Platform: i386
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: gnome-terminal
AssignedTo: seb128 at ubuntu.com
ReportedBy: dooglus at gmail.com
QAContact: desktop-bugs at lists.ubuntu.com
I was trying to find a reliable way to reproduce bug 17137. It only seems to
happen when the window list at the bottom is full. So I decided to run a few
gnome-terminals to fill it up.
I often run terminals, so I have put an icon on the top panel to allow me to run
them easily. I started with nothing showing in the window list at all and then
clicked the gnome-terminal icon on my top panel 4 times quickly - like a double
click on the mouse, only 4 of them, really quite fast. Only 3 of the 4 windows
I requested appeared, and then I heard a clunking noise and saw a dialog telling
me that "The Application "gnome-terminal" has quit unexpectedly. I told it to
close, and the 3 windows all disappeared.
This doesn't happen every time I try it, but about 1 in 10 times it does. I
compiled gnome-terminal from the sources so I could bring you a stack trace. I
waited for gnome-terminal to crash, then attached to it with gdb which the
dialog telling me that it had crashed was still displayed.
The processes running at the time looked like this:
UID PID PPID C STIME TTY TIME CMD
chris 32763 1 0 17:14 ? 00:00:00 sh -c cd
/home/chris/src/gnome-terminal/gnome-terminal-2.12.0/src; ./gnome-terminal
chris 32764 32763 0 17:14 ? 00:00:00 ./gnome-terminal
chris 340 32764 0 17:14 ? 00:00:00 /usr/lib/libgnomeui-0/gnome_segv
gnome-terminal 11 2.12.0
I attached to the process like this: "gdb ./gnome-terminal 32764"
And saw this stack trace:
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb72fe4ab in __waitpid_nocancel () from /lib/tls/i686/cmov/libpthread.so.0
#2 0xb7f4c508 in libgnomeui_module_info_get () from /usr/lib/libgnomeui-2.so.0
#3 <signal handler called>
#4 0x0805c14c in option_parsing_results_init (argc=0xbfbc4cf8, argv=0x8439468)
at terminal.c:1232
#5 0x0805f724 in handle_new_terminal_events () at terminal.c:3661
#6 0xb74394e7 in bonobo_marshal_VOID__STRING_BOXED_BOXED () from
/usr/lib/libbonobo-2.so.0
#7 0xb733b3a8 in IA__g_closure_invoke (closure=0x8116620, return_value=0x2d,
n_param_values=45, param_values=0x2d, invocation_hint=0x2d)
at gclosure.c:492
#8 0xb743a566 in bonobo_closure_invoke_va_list () from /usr/lib/libbonobo-2.so.0
#9 0xb743a854 in bonobo_closure_invoke () from /usr/lib/libbonobo-2.so.0
#10 0xb7427d2f in bonobo_listener_get_type () from /usr/lib/libbonobo-2.so.0
#11 0xb743b40d in _ORBIT_skel_small_Bonobo_Listener_event () from
/usr/lib/libbonobo-2.so.0
#12 0xb739f260 in ORBit_POA_setup_root () from /usr/lib/libORBit-2.so.0
#13 0xb73a3c4e in ORBit_OAObject_invoke () from /usr/lib/libORBit-2.so.0
#14 0xb7390ceb in ORBit_small_invoke_adaptor () from /usr/lib/libORBit-2.so.0
#15 0xb739f57c in ORBit_POAObject_post_invoke () from /usr/lib/libORBit-2.so.0
#16 0xb739fc1b in ORBit_POAObject_post_invoke () from /usr/lib/libORBit-2.so.0
#17 0xb73a2641 in ORBit_c_stub_invoke () from /usr/lib/libORBit-2.so.0
#18 0xb73a3ba3 in ORBit_handle_request () from /usr/lib/libORBit-2.so.0
#19 0xb738dd10 in giop_connection_handle_input () from /usr/lib/libORBit-2.so.0
#20 0xb73aa24d in link_connection_set_max_buffer () from /usr/lib/libORBit-2.so.0
#21 0xb73abe23 in link_servers_move_io_T () from /usr/lib/libORBit-2.so.0
#22 0xb72964ee in IA__g_main_context_dispatch (context=0x80c2338) at gmain.c:1934
#23 0xb72994f6 in g_main_context_iterate (context=0x80c2338, block=1,
dispatch=1, self=0x80be690) at gmain.c:2565
#24 0xb72999d8 in IA__g_main_context_iteration (context=0x80c2338, may_block=1)
at gmain.c:2624
#25 0xb73a81da in link_main_iteration () from /usr/lib/libORBit-2.so.0
#26 0xb738d3b5 in giop_recv_buffer_get () from /usr/lib/libORBit-2.so.0
#27 0xb7390a4a in ORBit_small_invoke_stub () from /usr/lib/libORBit-2.so.0
#28 0xb7390c1d in ORBit_small_invoke_stub_n () from /usr/lib/libORBit-2.so.0
#29 0xb73a2439 in ORBit_c_stub_invoke () from /usr/lib/libORBit-2.so.0
#30 0xb6e2c254 in Accessibility_EventListener_notifyEvent () from
/usr/lib/libspi.so.0
#31 0xb6ea22d0 in gnome_accessibility_module_shutdown () from
/usr/lib/gtk-2.0/modules/libatk-bridge.so
#32 0xb6ea2928 in gnome_accessibility_module_shutdown () from
/usr/lib/gtk-2.0/modules/libatk-bridge.so
#33 0xb734990c in signal_emit_unlocked_R (node=0x810c9b0, detail=1367,
instance=0x8467848, emission_return=0x0,
instance_and_params=0xbfbc581c) at gsignal.c:2451
#34 0xb734b150 in IA__g_signal_emit_valist (instance=0x8467848, signal_id=137,
detail=1367, var_args=Variable "var_args" is not available.
) at gsignal.c:2244
#35 0xb734b4c3 in IA__g_signal_emit (instance=0x2d, signal_id=45, detail=45) at
gsignal.c:2288
#36 0xb7945421 in atk_object_initialize () from /usr/lib/libatk-1.0.so.0
#37 0xb734727c in IA__g_cclosure_marshal_VOID__PARAM (closure=0xbfbc5a5c,
return_value=0x0, n_param_values=2, param_values=0xbfbc5d0c,
invocation_hint=0xbfbc5c0c, marshal_data=0xb794ed0c) at gmarshal.c:531
#38 0xb733ad75 in g_type_class_meta_marshal (closure=0x80aedc0,
return_value=0x2d, n_param_values=45, param_values=0xbfbc5d0c,
invocation_hint=0x2d, marshal_data=0x2d) at gclosure.c:569
#39 0xb733b3a8 in IA__g_closure_invoke (closure=0x80aedc0, return_value=0x2d,
n_param_values=45, param_values=0x2d, invocation_hint=0x2d)
at gclosure.c:492
#40 0xb7349769 in signal_emit_unlocked_R (node=0x80b69a8, detail=1367,
instance=0x8467848, emission_return=0x0,
instance_and_params=0xbfbc5d0c) at gsignal.c:2415
#41 0xb734b150 in IA__g_signal_emit_valist (instance=0x8467848, signal_id=1,
detail=1367, var_args=Variable "var_args" is not available.
) at gsignal.c:2244
#42 0xb734b4c3 in IA__g_signal_emit (instance=0x2d, signal_id=45, detail=45) at
gsignal.c:2288
#43 0xb733cc5b in g_object_dispatch_properties_changed (object=0x8467848,
n_pspecs=1, pspecs=0xbfbc5f7c) at gobject.c:557
#44 0xb733c1ea in g_object_notify_dispatcher (object=0x0, n_pspecs=45,
pspecs=0x2d) at gobject.c:238
#45 0xb73400bd in IA__g_object_notify (object=0x8467848,
property_name=0xb794e3cb "accessible-parent") at gobjectnotifyqueue.c:123
#46 0xb7944414 in atk_object_set_parent () from /usr/lib/libatk-1.0.so.0
#47 0xb6dea429 in gail_toplevel_new () from /usr/lib/gtk-2.0/modules/libgail.so
#48 0xb734990c in signal_emit_unlocked_R (node=0x80ed248, detail=0,
instance=0x840eb70, emission_return=0x0,
instance_and_params=0xbfbc623c) at gsignal.c:2451
#49 0xb734b150 in IA__g_signal_emit_valist (instance=0x840eb70, signal_id=22,
detail=0, var_args=Variable "var_args" is not available.
) at gsignal.c:2244
#50 0xb734b4c3 in IA__g_signal_emit (instance=0x2d, signal_id=45, detail=45) at
gsignal.c:2288
#51 0xb7beb0e6 in gtk_widget_show () from /usr/lib/libgtk-x11-2.0.so.0
#52 0xb7bf6d18 in gtk_window_present_with_time () from /usr/lib/libgtk-x11-2.0.so.0
#53 0xb7bf6d81 in gtk_window_present () from /usr/lib/libgtk-x11-2.0.so.0
#54 0x0805d877 in terminal_app_new_terminal (app=0x811c310, profile=0x8132ff0,
window=0x840eb70, force_menubar_state=0,
forced_menubar_state=0, start_fullscreen=0, override_command=0x0,
geometry=0x0, title=0x0,
working_dir=0x840ede0
"/home/chris/src/gnome-terminal/gnome-terminal-2.12.0/src", role=0x0, zoom=1,
startup_id=0x840ee38 "_TIME51880210", display_name=0x840eb50 ":0.0",
screen_number=0) at terminal.c:1980
#55 0x0805dd80 in new_terminal_with_options (results=0x840eb20) at terminal.c:1432
#56 0x0805f913 in handle_new_terminal_events () at terminal.c:3693
#57 0xb74394e7 in bonobo_marshal_VOID__STRING_BOXED_BOXED () from
/usr/lib/libbonobo-2.so.0
#58 0xb733b3a8 in IA__g_closure_invoke (closure=0x8116620, return_value=0x2d,
n_param_values=45, param_values=0x2d, invocation_hint=0x2d)
at gclosure.c:492
#59 0xb743a566 in bonobo_closure_invoke_va_list () from /usr/lib/libbonobo-2.so.0
#60 0xb743a854 in bonobo_closure_invoke () from /usr/lib/libbonobo-2.so.0
#61 0xb7427d2f in bonobo_listener_get_type () from /usr/lib/libbonobo-2.so.0
#62 0xb743b40d in _ORBIT_skel_small_Bonobo_Listener_event () from
/usr/lib/libbonobo-2.so.0
#63 0xb739f260 in ORBit_POA_setup_root () from /usr/lib/libORBit-2.so.0
#64 0xb73a3c4e in ORBit_OAObject_invoke () from /usr/lib/libORBit-2.so.0
#65 0xb7390ceb in ORBit_small_invoke_adaptor () from /usr/lib/libORBit-2.so.0
#66 0xb739f57c in ORBit_POAObject_post_invoke () from /usr/lib/libORBit-2.so.0
#67 0xb739fc1b in ORBit_POAObject_post_invoke () from /usr/lib/libORBit-2.so.0
#68 0xb73a2641 in ORBit_c_stub_invoke () from /usr/lib/libORBit-2.so.0
#69 0xb73a3ba3 in ORBit_handle_request () from /usr/lib/libORBit-2.so.0
#70 0xb738dd10 in giop_connection_handle_input () from /usr/lib/libORBit-2.so.0
#71 0xb73aa24d in link_connection_set_max_buffer () from /usr/lib/libORBit-2.so.0
#72 0xb73abe23 in link_servers_move_io_T () from /usr/lib/libORBit-2.so.0
#73 0xb72964ee in IA__g_main_context_dispatch (context=0x80bb3f0) at gmain.c:1934
#74 0xb72994f6 in g_main_context_iterate (context=0x80bb3f0, block=1,
dispatch=1, self=0x80be690) at gmain.c:2565
#75 0xb72997e3 in IA__g_main_loop_run (loop=0x81ee460) at gmain.c:2769
#76 0xb7b00ee5 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#77 0x080600c8 in main (argc=1, argv=0xbfbc6e24) at terminal.c:1770
I notice that no matter how many gnome-terminals you run, there's only one
process. Perhaps starting 2 "at the same time" triggers a race condition.
--
Configure bugmail: http://bugzilla.ubuntu.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.
More information about the desktop-bugs
mailing list