Bug 85060
Summary: | notification area segv | ||
---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | Matt Wilson <msw> |
Component: | gnome-panel | Assignee: | Havoc Pennington <hp> |
Status: | CLOSED RAWHIDE | QA Contact: | |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 9 | CC: | otaylor |
Target Milestone: | --- | Keywords: | Triaged |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2003-10-21 20:11:17 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 79578, 100643 |
Description
Matt Wilson
2003-02-25 06:47:24 UTC
<msw> hp: I was just sitting there <msw> hp: it came up 1 pixel wide <msw> hp: I right clicked on the 1 pixel in order to quit rhn <msw> hp: then I went and added the rhn applet again <msw> hp: and a little while later it crashed <msw> hah! <msw> duplicated! <msw> I had to log in N times to get it to be 1 pixel wide again <msw> right click on the notification icon, exit, then system tools->notification applet The situation seems to be a socket that's inside a plug that's inside a socket. Outermost socket activates the plug, which changes is_active, which then invokes socket_update_active(). So the innermost socket is in same process as the plug. The plug must be the applet and the socket is the system tray slot. Trying to see some reason socket_update_active wouldn't be removed while socket was invalid. Wild theory: hierarchy-changed is not received when destroying the system tray slot, because GTK_ANCHORED flag is not set on GtkPlug, and there's code in gtk_widget_unparent() that only does the hierarchy-changed if the toplevel for the window (in this case the plug) has GTK_ANCHORED set. If hierarchy-changed is not received when destroying the system tray slot socket, then socket_update_active() callback would not be removed and we would get a crash like this. That has to be crack though because it doesn't explain why it only happens sometimes; you'd expect it to crash any time you focused the applet after removing a tray icon. Probably 3am nonsense. In general, the ANCHORED flag is set on GtkPlug; it inherits from GtkWindow and GtkWindow sets it in it's _init(). There might be some problems if you reused a plug from in-process out-of-process. I'm not we update the flag properly when we make the GtkPlug a toplevel again, but that shouldn't matter here. Isn't this bug just the 1 pixel wide bug which has been fixed? yea, I've not been able to reproduce it anymore. |