GNOME Bugzilla – Bug 73440
applets not sync with panel of color background
Last modified: 2004-12-22 21:47:04 UTC
Package: gnome-panel Severity: major Version: gnome-panel-1.5.11.0.200203020022-snap.ximian.1 Synopsis: applets not sync with panel of color background Bugzilla-Product: gnome-panel Bugzilla-Component: Panel Description: Description of Problem: each applet says: "problem to sync with panel" Steps to reproduce the problem: 1. set background property to 'color' and give a color. 2. restart panel (or gnome) 3. applets come up. Actual Results: fail to sync Expected Results: sync as usual. How often does this happen? whenever. Additional Information: ------- Bug moved to this database by unknown@bugzilla.gnome.org 2002-03-04 16:50 ------- Unknown version 1.0.x in product gnome-panel. Setting version to the default, "unspecified". Reassigning to the default owner of the component, gnome-panel-maint@bugzilla.gnome.org.
Confirming behaviour (though it seems only a small part in a larger plot). When you set the background color of the panel, and try to restart (X or the panel), all the applets give a 'Could not load applet' dialog. (no bug-buddy shows up though, donno how to trace properly) Output on the console: gnome-panel-2 (pid:13712): ** WARNING **: panel-applet-frame.c:566:panel_applet_ frame_construct(): failed to load OAFIID:GNOME_MultiLoadApplet gnome-panel-2 (pid:13712): Gtk-WARNING **: A floating object was finalized. This means that someone called g_object_unref() on an object that had only a floating reference; the initial floating reference is not owned by anyone and must be removed with gtk_object_sink() after a normal reference is obtained with g_object_ref(). gnome-panel-2 (pid:13712): Bonobo-WARNING **: Activation exception 'Moniker has an unknown moniker prefix' gnome-panel-2 (pid:13712): ** WARNING **: panel-applet-frame.c:566:panel_applet_ frame_construct(): failed to load OAFIID:GNOME_MixerApplet gnome-panel-2 (pid:13712): Gtk-WARNING **: A floating object was finalized. This means that someone called g_object_unref() on an object that had only a floating reference; the initial floating reference is not owned by anyone and must be removed with gtk_object_sink() after a normal reference is obtained with g_object_ref(). gnome-panel-2 (pid:13712): Bonobo-WARNING **: Activation exception 'Moniker has an unknown moniker prefix' gnome-panel-2 (pid:13712): ** WARNING **: panel-applet-frame.c:566:panel_applet_ frame_construct(): failed to load OAFIID:GNOME_ClockApplet gnome-panel-2 (pid:13712): Gtk-WARNING **: A floating object was finalized. This means that someone called g_object_unref() on an object that had only a floating reference; the initial floating reference is not owned by anyone and must be removed with gtk_object_sink() after a normal reference is obtained with g_object_ref(). <repeats for all applets> Originaly reported by Kang with a ximian snapshot, but i am having the same reproducable problems here with gnome-panel-1.5.12 (redhat 7.2 x86, clean builds, latest released gnome2 libs etc) Also see bug #73711 It is posible to set a bgcolor, but the applets do not adopt this change. (And then when you restart as this bug describes the applets will fail to load. Might well be related).
Yet another 'we can't ship with this'-type panel bug.
Attaching a proposed fix for the bug. The logic goes like this In panel-applet-frame.c we construct the moniker id with the current background color of the panel. So if we have the background as white we have the moniker string with the color specified as color:#ffffff. Now '#' is used as a delimiter in parsing the moniker string. So when the '#' is encountered while parsing the moniker string the string uptil the hash is returned. This results in a stripped down moniker string. As a result we are unable to load the applet. Now i have removed the '#' as we really dont not need the '#' and the color is now specified as color:ffffff. This should suffice as long as both parties i.e panel-applet-frame.c and libpanel-applet/panel-applet.c know the color string format. I have checked the applets to see if they depend on the format of the color string. I havent found any occurances of that.
Created attachment 7100 [details] [review] Proposed Patch
Confirming that this patch fixes the problem where applets would no longer load on startup when the panel's background color is set to a color. (tried with gnome-panel 1.5.12 and cvs head gnome-panel on 2 different boxes) Mark (or anyone else), can you commit this fix to CVS and close the bug?
Patch applied in CVS. Thanks Shivram