GNOME Bugzilla – Bug 149371
Clock applet died unexpectedly
Last modified: 2005-07-18 21:24:09 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 ?? ()
+ Trace 49113
Thread 1 (Thread -150703072 (LWP 20381))
------- 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.
*** Bug 148488 has been marked as a duplicate of this bug. ***
Mark: as you know ORBit2 a lot better than me, maybe you could take a look at this one ;-)
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
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.
Michael: you might find this interesting too
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
*** Bug 171653 has been marked as a duplicate of this bug. ***
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.
*** Bug 304791 has been marked as a duplicate of this bug. ***
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 ].
*** Bug 171372 has been marked as a duplicate of this bug. ***
*** Bug 153898 has been marked as a duplicate of this bug. ***