Bug 459567
Summary: | Non-equal gtk_color_scheme in ~/.gtkrc and gconf makes GTK enter endless loop | ||||||
---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Kirill Kolyshkin <kolyshkin> | ||||
Component: | gtk2 | Assignee: | Matthias Clasen <mclasen> | ||||
Status: | CLOSED WONTFIX | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||
Severity: | high | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 10 | CC: | marco.crosio, rstrode | ||||
Target Milestone: | --- | Keywords: | Reopened, Triaged | ||||
Target Release: | --- | ||||||
Hardware: | All | ||||||
OS: | Linux | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | Environment: | ||||||
Last Closed: | 2009-12-18 06:19:18 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: | |||||||
Attachments: |
|
Description
Kirill Kolyshkin
2008-08-20 08:12:11 UTC
Here's an except from strace, for those lazy folks that don't want to look in attachments. As you can see, gnome-settings-daemon repeats the following part in an endless loop: 6086 access("MARK: gnome-settings-daemon apply_settings: start ", F_OK) = -1 ENOENT (No such file or directory) 6086 open("/usr/share/gnome-settings-daemon/xrdb", O_RDONLY|O_NONBLOCK|O_DIRECTORY|0x80000) = 21 6086 fstat(21, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 6086 getdents(21, /* 8 entries */, 4096) = 240 6086 getdents(21, /* 0 entries */, 4096) = 0 6086 close(21) = 0 6086 stat("/home/kir/.gnome2/xrdb", 0x7fff2ee30540) = -1 ENOENT (No such file or directory) 6086 open("/usr/share/gnome-settings-daemon/xrdb/General.ad", O_RDONLY) = 21 6086 fstat(21, {st_mode=S_IFREG|0644, st_size=48, ...}) = 0 6086 read(21, "*background: BACKGROUND\n*foregro"..., 48) = 48 6086 close(21) = 0 6086 open("/usr/share/gnome-settings-daemon/xrdb/Editres.ad", O_RDONLY) = 21 6086 fstat(21, {st_mode=S_IFREG|0644, st_size=210, ...}) = 0 6086 read(21, "Editres*Tree.Background: WINDOW_"..., 210) = 210 6086 close(21) = 0 6086 open("/usr/share/gnome-settings-daemon/xrdb/Emacs.ad", O_RDONLY) = 21 6086 fstat(21, {st_mode=S_IFREG|0644, st_size=848, ...}) = 0 6086 read(21, "Emacs.default.attributeForegroun"..., 848) = 848 6086 close(21) = 0 6086 open("/usr/share/gnome-settings-daemon/xrdb/Motif.ad", O_RDONLY) = 21 6086 fstat(21, {st_mode=S_IFREG|0644, st_size=2102, ...}) = 0 6086 read(21, "*XmScrollBar.background: BACKGRO"..., 2102) = 2102 6086 close(21) = 0 6086 open("/usr/share/gnome-settings-daemon/xrdb/Tk.ad", O_RDONLY) = 21 6086 fstat(21, {st_mode=S_IFREG|0644, st_size=3427, ...}) = 0 6086 read(21, "*Toplevel.background: BACKGROUND"..., 3427) = 3427 6086 close(21) = 0 6086 open("/usr/share/gnome-settings-daemon/xrdb/Xaw.ad", O_RDONLY) = 21 6086 fstat(21, {st_mode=S_IFREG|0644, st_size=749, ...}) = 0 6086 read(21, "*MenuButton.background: BACKGROU"..., 749) = 749 6086 close(21) = 0 6086 access("/home/kir/.Xresources", F_OK) = -1 ENOENT (No such file or directory) 6086 access("/home/kir/.Xdefaults", F_OK) = -1 ENOENT (No such file or directory) 6086 pipe([21, 22]) = 0 6086 pipe([23, 24]) = 0 6086 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f0926df3830) = -1 EAGAIN (Resource temporarily unavailable) 6086 close(21) = 0 6086 close(22) = 0 6086 close(23) = 0 6086 close(24) = 0 6086 write(2, "\n** (gnome-settings-daemon:6086)"..., 127) = 127 6086 access("MARK: gnome-settings-daemon apply_settings: end ", F_OK) = -1 ENOENT (No such file or directory) 6086 lstat("/etc/gtk-2.0/gtkrc", {st_mode=S_IFREG|0644, st_size=57, ...}) = 0 6086 open("/etc/gtk-2.0/gtkrc", O_RDONLY) = 21 6086 read(21, "gtk-theme-name = \"Nodoka\"\ngtk-ic"..., 4000) = 57 6086 access("MARK: gnome-settings-daemon apply_settings: start ", F_OK) = -1 ENOENT (No such file or directory) $ rpm -q glib2 glib2-2.16.5-1.fc9.x86_64 glib2-2.16.5-1.fc9.i386 All right, looks like this is a bug in GTK. The thing is, here is my ~/.gtkrc-2.0: $ cat ~/.gtkrc-2.0 include "/usr/share/themes/Crux/gtk-2.0/gtkrc" Now, when I start /usr/libexec/gnome-settings-daemon, it enters the above-mentioned endless loop. PLUS, so does every gtk+ application (logjam, firefox, gkrellm, gnome-screensaver). What they all do is config file opening, and they do that in an endless loop. The second I remove the "include" line everything goes back to normal. Now, in order to trigger the bad behaviour again, I need add the "include" line and then restart gnome-settings-daemon. Hope this gives enough to find out what the problem is. TO REPRODUCE (easy as 1-2-3): echo 'include "/usr/share/themes/Crux/gtk-2.0/gtkrc"' >> ~/.gtkrc-2.0 killall -TERM gnome-settings-daemon /usr/libexec/gnome-settings-daemon It's very likely the bug is in the theme itself. Could you please get the output of a GTK+ program being launched when recreating the problem? No, this is not the bug in the theme. I have finally found the root cause. Both ~/.gtkrc-2.0 AND /desktop/gnome/interface/ contains property gtk_color_scheme. Apparently this drives gtk mad. So, here's more presize way to trigger the bug: 1. Set gtk_color_scheme in ~/.gtkrc-2.0: echo 'gtk_color_scheme = "fg_color:#100000000000; bg_color:#ecece9e9e9e9; text_color:#000000000000; base_color:#ffffffffffff; selected_fg_color:#ffffffffffff; selected_bg_color:#52a2ac71db93; tooltip_fg_color:#000000000000; tooltip_bg_color:#f5f5f5f5b5b5"' >> ~/.gtkrc-2.0 2. Set gtk_color_scheme in GConf settings: gconftool-2 --type string --set /desktop/gnome/interface/gtk_color_scheme "fg_color:#000000000000; bg_color:#ecece9e9e9e9; text_color:#000000000000; base_color:#ffffffffffff; selected_fg_color:#ffffffffffff; selected_bg_color:#52a2ac71db93; tooltip_fg_color:#000000000000; tooltip_bg_color:#f5f5f5f5b5b5" ### Note that fg_color is different -- if all colors are the same, the bug won't be triggered. 3. Restart gnome-settings-daemon: killall -TERM gnome-settings-daemon /usr/libexec/gnome-settings-daemon Voila, everything goes boom. Now, to fix this, just change the value of fg_color in ~/.gtkrc to match the one in GConf. Changed the bug subject according to my latest findings. Also I guess this bug belongs to gtk+ not gtk-engines, thus reassigning. I was able to reproduce it with both Crux and Nodoka, and can try any other theme you like. This message is a reminder that Fedora 9 is nearing its end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 9. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '9'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 9's end of life. Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 9 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug to the applicable version. If you are unable to change the version, please add a comment here and someone will do it for you. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping Fedora 9 changed to end-of-life (EOL) status on 2009-07-10. Fedora 9 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. Thank you for reporting this bug and we are sorry it could not be fixed. Comment #5 described the way to reproduce the bug easily and reliably in about two minites. It still works for me on Fedora 10, here's some more info: [kir@kir ~]$ rpm -q fedora-release fedora-release-10-1.noarch [kir@kir ~]$ rpm -qa gnome\* gnome-speech-0.4.22-1.fc10.x86_64 gnome-compiz-manager-0.10.4-4.fc10.x86_64 gnome-doc-utils-0.14.0-2.fc10.noarch gnome-settings-daemon-2.24.1-7.fc10.x86_64 gnome-system-monitor-2.24.3-1.fc10.x86_64 gnome-terminal-2.24.3-1.fc10.x86_64 gnome-panel-2.24.3-2.fc10.x86_64 gnome-desktop-devel-2.24.3-1.fc10.x86_64 gnome-python2-extras-2.19.1-34.fc10.x86_64 gnome-python2-gtksourceview-2.23.0-1.fc10.x86_64 gnome-mag-0.15.4-1.fc10.x86_64 gnome-python2-desktop-2.23.0-1.fc10.x86_64 gnome-python2-bonobo-2.22.3-1.fc10.x86_64 gnome-spell-1.0.8-5.fc9.x86_64 gnome-doc-utils-stylesheets-0.14.0-2.fc10.noarch gnome-python2-gnomedesktop-2.23.0-1.fc10.x86_64 gnome-backgrounds-2.24.0-2.fc10.noarch gnome-games-2.24.3-2.fc10.x86_64 gnome-audio-2.22.2-2.fc10.noarch gnome-python2-libwnck-2.23.0-1.fc10.x86_64 gnome-sharp-2.24.0-1.fc10.x86_64 gnome-vfs2-obexftp-0.4-8.fc10.x86_64 gnome-user-share-0.40-3.fc10.x86_64 gnome-media-2.24.0.1-2.fc10.x86_64 gnome-user-docs-2.24.2-1.fc10.noarch gnome-session-xsession-2.24.3-1.fc10.x86_64 gnome-python2-gnomevfs-2.22.3-1.fc10.x86_64 gnome-python2-gnomeprint-2.23.0-1.fc10.x86_64 gnome-pilot-2.0.16-2.fc9.x86_64 gnome-vfs2-devel-2.24.0-3.fc10.x86_64 gnome-vfs2-2.24.0-3.fc10.x86_64 gnome-keyring-devel-2.24.1-1.fc10.x86_64 gnome-vfs2-smb-2.24.0-3.fc10.x86_64 gnome-pilot-devel-2.0.16-2.fc9.x86_64 gnome-keyring-pam-2.24.1-1.fc10.x86_64 gnome-menus-2.24.2-1.fc10.x86_64 gnome-session-2.24.3-1.fc10.x86_64 gnome-applets-2.24.3.1-1.fc10.x86_64 gnome-panel-libs-2.24.3-2.fc10.x86_64 gnome-common-2.26.0-2.fc10.noarch gnome-python2-gtkmozembed-2.19.1-34.fc10.x86_64 gnome-python2-rsvg-2.23.0-1.fc10.x86_64 gnome-bluetooth-0.11.0-5.fc10.x86_64 gnome-python2-gnome-2.22.3-1.fc10.x86_64 gnome-netstatus-2.26.0-1.fc10.x86_64 gnome-mime-data-2.18.0-3.fc10.noarch gnome-keyring-2.24.1-1.fc10.x86_64 gnome-python2-canvas-2.22.3-1.fc10.x86_64 gnome-screensaver-2.24.1-2.fc10.x86_64 gnome-packagekit-0.3.14-1.fc10.x86_64 gnome-python2-gtkhtml2-2.19.1-34.fc10.x86_64 gnome-mount-0.8-1.fc9.x86_64 gnome-menus-devel-2.24.2-1.fc10.x86_64 gnome-volume-manager-2.24.0-1.fc10.x86_64 gnome-compiz-manager-devel-0.10.4-4.fc10.x86_64 gnome-utils-2.24.1-1.fc10.x86_64 gnome-desktop-sharp-2.24.0-3.fc10.x86_64 gnome-icon-theme-2.24.0-1.fc10.noarch gnome-python2-2.22.3-1.fc10.x86_64 gnome-bluetooth-libs-0.11.0-5.fc10.x86_64 gnome-desktop-2.24.3-1.fc10.x86_64 gnome-themes-2.24.3-1.fc10.noarch gnome-python2-gconf-2.22.3-1.fc10.x86_64 gnome-python2-applet-2.23.0-1.fc10.x86_64 gnome-panel-devel-2.24.3-2.fc10.x86_64 gnome-python2-libegg-2.19.1-34.fc10.x86_64 [kir@kir ~]$ rpm -qa gtk\* gtk-vnc-0.3.8-4.fc10.x86_64 gtk-nodoka-engine-0.7.2-5.fc10.x86_64 gtkspell-devel-2.0.15-1.fc10.x86_64 gtk-sharp2-2.12.7-1.fc10.1.x86_64 gtkspell-2.0.15-1.fc10.x86_64 gtkhtml2-2.11.1-4.fc10.x86_64 gtksourceview2-2.4.2-1.fc10.x86_64 gtkhtml3-3.24.5-1.fc10.x86_64 gtk2-devel-2.14.7-8.fc10.x86_64 gtk2-engines-2.16.1-1.fc10.x86_64 gtkglext-libs-1.2.0-7.fc10.x86_64 gtk+-1.2.10-68.fc10.x86_64 gtk2-2.14.7-8.fc10.x86_64 gtkmm24-2.14.3-1.fc10.x86_64 gtk2-2.14.7-8.fc10.i386 gtk-doc-1.10-2.fc10.noarch gtk+-1.2.10-68.fc10.i386 gtksourceview-1.8.5-5.fc10.x86_64 Please fix. Let me know if you need some more info from me This message is a reminder that Fedora 10 is nearing its end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 10. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '10'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 10's end of life. Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 10 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug to the applicable version. If you are unable to change the version, please add a comment here and someone will do it for you. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping Fedora 10 changed to end-of-life (EOL) status on 2009-12-17. Fedora 10 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. Thank you for reporting this bug and we are sorry it could not be fixed. |