GNOME Bugzilla – Bug 137308
gnome-panel crash upon trying to remove extra clock applet
Last modified: 2005-06-12 14:44:41 UTC
Distribution: Fedora Core release 1 (Yarrow) Package: gnome-panel Severity: critical Version: GNOME2.4.0 2.4.x Gnome-Distributor: GNOME.Org Synopsis: gnome-panel crash upon trying to remove extra clock applet Bugzilla-Product: gnome-panel Bugzilla-Component: Panel Bugzilla-Version: 2.4.x BugBuddy-GnomeVersion: 2.0 (2.4.0.1) Description: Description of the crash: This part may not be relevant, but for background and just in case... I resized my screen (using xrandr) so that I could interface my laptop to an overhead projector and see the full screen. I then logged out (while at the lower resolution). The next time I logged in the resolution of course was back to the higher resolution since the Xserver restarts upon logout. When I logged in, I couldn't see the gnome-panel. I tried various tricks, including logging out and nuking stuff in the ~/.gconf/apps/panel directory and doing some killall's on the gnome panel before I finally saw an empty one appear at the top of my screen. I then went and started to add the things I normally have on a panel. This is the part that is definitely relevant: When I tried to add a clock applet, I got two of them (I have no idea why). I tried to remove one (right click and choose remove from panel), but it stayed. So I tried to remove it a couple more times when I got this crash. Steps to reproduce the crash: 1. Possibly do all the xrandr stuff I did; I don't know if this is necessary. 2. Add some clock applets to the panel 3. Try to remove one -- and do so repeatedly when it won't work How often does this happen? First time I've seen it, but then again, I haven't changed the resolution much before. Additional Information: I'm running Fedora Core 1. If the stack trace isn't helpful, let me know and I'll try to determine whether it's reproducible--if it is I'll try it on a CVS installation. Debugging Information: Backtrace was generated from '/usr/bin/gnome-panel' (no debugging symbols found)...Using host libthread_db library "/lib/tls/libthread_db.so.1". (no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...[Thread debugging using libthread_db enabled] [New Thread -1084546944 (LWP 5940)] (no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... 0x004c7c32 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
+ Trace 45156
Thread 1 (Thread -1084546944 (LWP 5940))
------- Bug moved to this database by unknown@bugzilla.gnome.org 2004-03-15 18:38 ------- Reassigning to the default owner of the component, gnome-panel-maint@bugzilla.gnome.org.
*sigh*. I submitted this bug a *long* time ago, but my outgoing mail was screwed up. I had to read a lot of it before I even remembered submitting it. Anyway, I figured all that email was long since dead. But when I finally got annoyed enough to fix the problem today, I found out that email from months ago had actually been queued up and was just now sent. I'm no longer using 2.4.x, and in any event, I haven't seen the bug since I described it in January. Do whatever you want with it.
*** Bug 138573 has been marked as a duplicate of this bug. ***
*** Bug 139036 has been marked as a duplicate of this bug. ***
I think what's going on here is that we're deleting an applet which has already been deleted or something. It'd be very useful if you could get a stack trace with the gnome-panel debuginfo package installed
*** Bug 147788 has been marked as a duplicate of this bug. ***
*** Bug 149573 has been marked as a duplicate of this bug. ***
*** Bug 152700 has been marked as a duplicate of this bug. ***
*** Bug 156158 has been marked as a duplicate of this bug. ***
*** Bug 158364 has been marked as a duplicate of this bug. ***
I just found (and fixed) a bug really similar to this one in HEAD. But I don't think this was the same bug than this one. It'll be interesting to see if this still happens in 2.9/2.10 (one duplicate was from 2.8).
Small not I forgot: the bug was happening when the last applet was removed (or when the last launcher was removed). This might be a good question to ask for next duplicates.
*** Bug 162485 has been marked as a duplicate of this bug. ***
*** Bug 163823 has been marked as a duplicate of this bug. ***
Just received a mail from François telling me this: "When I add *one* applet, sometimes *two* applets are added. It happened three times, with three different applets." That's the cause of the bug: both applets probably share the same settings and when you remove the first one, you remove the second one too. So when you try to remove the second one, it crashes. I don't know how this can happen...
Got it. 2005-03-27 Vincent Untz <vincent@vuntz.net> Make the panel more robust when the object/applet/toplevel list contains incorrect data. Most probably fixes bug #137308. * panel-gconf.[ch]: (panel_gconf_value_strcmp): new, to strcmp strings in GConfValue * panel-profile.c: (panel_profile_save_id_list): make sure there is no duplicate element in the list when saving it (panel_profile_remove_from_list): remove all occurrence of the id in the list (and not only the first one) (panel_profile_load_toplevel): stop monitoring the gconf dir if there's an error (panel_profile_load_object): ditto (panel_profile_toplevel_id_list_notify): make sure there is no duplicate element in the list we get, so we don't add twice the same toplevel (panel_profile_object_id_list_notify): ditto, for the objects (panel_profile_load_list): ditto * panel-util.[ch]: (panel_g_slist_make_unique): new, to remove duplicate elements in a list
*** Bug 307371 has been marked as a duplicate of this bug. ***