After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 149371 - Clock applet died unexpectedly
Clock applet died unexpectedly
Status: RESOLVED FIXED
Product: ORBit2
Classification: Deprecated
Component: general
2.8.x
Other other
: Normal critical
: ---
Assigned To: Daniel Veillard
Daniel Veillard
: 148488 153898 171372 171653 304791 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2004-08-05 04:40 UTC by Rodd Clarkson
Modified: 2005-07-18 21:24 UTC
See Also:
GNOME target: ---
GNOME version: 2.7/2.8



Description Rodd Clarkson 2004-08-05 04:40:45 UTC
Distribution: Fedora Core release 2 (Tettnang)
Package: gnome-panel
Severity: critical
Version: GNOME2.7.90 2.7.4.1
Gnome-Distributor: GARNOME
Synopsis: Clock applet died unexpectedly
Bugzilla-Product: gnome-panel
Bugzilla-Component: clock applet
Bugzilla-Version: 2.7.4.1
BugBuddy-GnomeVersion: 2.0 (2.7.2)
Description:
Description of the crash:

A dialog appeared informing me that:

The "Clock" applet appears to have died unexpectedly.

and asked "Do you want to reload this applet?" to which I answered yes.

At this point gnome-panel crashed and bug-buddy stepped in.




Debugging Information:

Backtrace was generated from
'/home/rodd/gnome-2.7.4-test/bin/gnome-panel'

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -150703072 (LWP 20381)]
0x00111402 in ?? ()

Thread 1 (Thread -150703072 (LWP 20381))

  • #0 ??
  • #1 __waitpid_nocancel
    from /lib/tls/libpthread.so.0
  • #2 libgnomeui_segv_handle
    at gnome-ui-init.c line 741
  • #3 <signal handler called>
  • #4 ORBit_adaptor_find
    at orbit-adaptor.c line 164
  • #5 ORBit_handle_request
    at orbit-adaptor.c line 221
  • #6 giop_connection_handle_input
    at giop-recv-buffer.c line 1281
  • #7 link_connection_io_handler
    at linc-connection.c line 1267
  • #8 link_source_dispatch
    at linc-source.c line 53
  • #9 g_main_dispatch
    at gmain.c line 1942
  • #10 g_main_context_dispatch
    at gmain.c line 2492
  • #11 g_main_context_iterate
    at gmain.c line 2573
  • #12 g_main_context_iteration
    at gmain.c line 2632
  • #13 link_main_iteration
    at linc.c line 232
  • #14 giop_recv_buffer_get
    at giop-recv-buffer.c line 717
  • #15 ORBit_small_invoke_stub
    at orbit-small.c line 657
  • #16 ORBit_small_invoke_stub_n
    at orbit-small.c line 575
  • #17 ORBit_c_stub_invoke
    at poa.c line 2640
  • #18 Bonobo_ActivationContext_query
    at Bonobo_ActivationContext-stubs.c line 140
  • #19 bonobo_activation_query
    at bonobo-activation-activate.c line 290
  • #20 panel_applet_frame_get_name
    at panel-applet-frame.c line 820
  • #21 panel_applet_frame_cnx_broken
    at panel-applet-frame.c line 862
  • #22 g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #23 g_closure_invoke
    at gclosure.c line 437
  • #24 signal_emit_unlocked_R
    at gsignal.c line 2435
  • #25 g_signal_emit_valist
    at gsignal.c line 2194
  • #26 g_signal_emit
    at gsignal.c line 2238
  • #27 link_connection_state_changed_T_R
    at linc-connection.c line 287
  • #28 link_connection_state_changed
    at linc-connection.c line 689
  • #29 link_connection_exec_disconnect
    at linc-connection.c line 1339
  • #30 link_dispatch_command
    at linc.c line 441
  • #31 link_exec_command
    at linc.c line 123
  • #32 link_connection_disconnect
    at linc-connection.c line 1354
  • #33 giop_connection_close
    at giop-connection.c line 55
  • #34 giop_connection_dispose
    at giop-connection.c line 65
  • #35 g_object_run_dispose
    at gobject.c line 602
  • #36 link_connections_close
    at linc-connection.c line 1447
  • #37 giop_shutdown
    at giop.c line 614
  • #38 CORBA_ORB_shutdown
    at corba-orb.c line 1144
  • #39 CORBA_ORB_destroy
    at corba-orb.c line 1163
  • #40 shutdown_orb
    at corba-orb.c line 255
  • #41 exit
    from /lib/tls/libc.so.6
  • #42 gamin_fork_server
    at gam_fork.c line 41
  • #43 gamin_connect_unix_socket
    at gam_api.c line 144
  • #44 gamin_try_reconnect
    at gam_api.c line 574
  • #45 FAMPending
    at gam_api.c line 929
  • #46 fam_do_iter_unlocked
    at file-method.c line 2170
  • #47 fam_callback
    at file-method.c line 2253
  • #48 g_io_unix_dispatch
    at giounix.c line 161
  • #49 g_main_dispatch
    at gmain.c line 1942
  • #50 g_main_context_dispatch
    at gmain.c line 2492
  • #51 g_main_context_iterate
    at gmain.c line 2573
  • #52 g_main_loop_run
    at gmain.c line 2777
  • #53 gtk_main
    at gtkmain.c line 1172
  • #54 main
    at main.c line 99
  • #0 ??




------- Bug moved to this database by unknown@bugzilla.gnome.org 2004-08-05 00:40 -------


Unknown version 2.7.4.1 in product gnome-panel. Setting version to "1.5.x".
Unknown platform unknown. Setting to default platform "Other".
Unknown milestone "unknown" in product "gnome-panel".
   Setting to default milestone for this product, '---'
Setting to default status "UNCONFIRMED".
Setting qa contact to the default for this product.
   This bug either had no qa contact or an invalid one.

Comment 1 Vincent Untz 2004-08-05 08:51:35 UTC
*** Bug 148488 has been marked as a duplicate of this bug. ***
Comment 2 Vincent Untz 2004-08-05 08:57:19 UTC
Mark: as you know ORBit2 a lot better than me, maybe you could take a look at
this one ;-)
Comment 3 Mark McLoughlin 2004-08-05 09:50:31 UTC
What's going on here is that libgamin forks the server, calls exit(0) on the
intermediate child, the ORBit2 atexit() handler gets run which shuts down the
ORB and causes "cnx-broken" signals to be emitted on CORBA connections, we
handle that  for each applet by popping up a dialog to say "applet crashed" and
before we do so we run a bonobo-activation query to get the name of the applet
but that CORBA call crashes because the ORB has shutdown.

Or something.

Phew !

So there are probably three bugs here

 1) maybe gamin shouldn't run the atexit handlers
 2) the panel definitely shouldn't try and run a bonobo-activation 
    query when told the ORB is shutting down
 3) the ORB probably shouldn't crash when you try and invoke a method 
    while its shutting down
Comment 4 Mark McLoughlin 2004-08-05 09:52:09 UTC
So, DV sees no problems with using _exit(0) in the intermediate child rather
than exit(0). That should happily fix the bug - moving to gamin.
Comment 5 Mark McLoughlin 2004-08-05 09:52:53 UTC
Michael: you might find this interesting too
Comment 6 Daniel Veillard 2004-08-05 10:51:59 UTC
I fixed the problem in CVS by using _exit(0) , this also solved a problem
I had starting the settings daemon :-)
Will be in 0.0.5 soonish ...

  thanks !

Daniel
Comment 7 Elijah Newren 2005-03-25 22:36:59 UTC
*** Bug 171653 has been marked as a duplicate of this bug. ***
Comment 8 Michael Meeks 2005-03-29 11:50:14 UTC
So - the ORBit2 crasher sucks too - can you mark this as an ORBit2 bug when the
other bits are fixed ? :-)

It's prolly / perhaps easy to put all the incoming POAs in the queuing requests
state until we're down.
Comment 9 Christian Kirbach 2005-07-18 21:10:16 UTC
*** Bug 304791 has been marked as a duplicate of this bug. ***
Comment 10 Christian Kirbach 2005-07-18 21:11:49 UTC
Last dup is Gnome 2.8.3 , adjusting version.

Moving product to Orbit2 / POA

------- Additional Comment #1 From Michael Meeks 2005-05-20 13:47 UTC ------- 

This is a duplicate of another bug - I forget which one. Basically the
CORBA_ORB_shutdown logic is mis-ordered - and beyond that - we should inhibit
all these 'broken' callbacks when we're shutting down anyway [ there were other
instances of this sort of problem ].
Comment 11 Christian Kirbach 2005-07-18 21:21:31 UTC
*** Bug 171372 has been marked as a duplicate of this bug. ***
Comment 12 Christian Kirbach 2005-07-18 21:24:09 UTC
*** Bug 153898 has been marked as a duplicate of this bug. ***