Bug 314545 - Upgrade to oxygen-gtk2 1.3.2 is buggy
Summary: Upgrade to oxygen-gtk2 1.3.2 is buggy
Status: RESOLVED FIXED
Alias: None
Product: Oxygen
Classification: Plasma
Component: gtk2-engine (show other bugs)
Version: unspecified
Platform: Arch Linux Linux
: NOR major
Target Milestone: ---
Assignee: Hugo Pereira Da Costa
URL:
Keywords:
: 272570 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-02-06 18:53 UTC by David Rosenstrauch
Modified: 2013-02-16 09:13 UTC (History)
9 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
proposed patch (1.24 KB, patch)
2013-02-07 13:31 UTC, Hugo Pereira Da Costa
Details
updated patch. Previous one was incomplete (1.70 KB, patch)
2013-02-07 13:34 UTC, Hugo Pereira Da Costa
Details
Screenshot of Firefox with grey textfields (313.48 KB, image/png)
2013-02-16 09:13 UTC, denk
Details

Note You need to log in before you can comment on or make changes to this bug.
Description David Rosenstrauch 2013-02-06 18:53:37 UTC
As per bug I filed with my distro (https://bugs.archlinux.org/task/33669) the latest oxygen-gtk2 update is buggy:

1) Oxygen-gtk2 is no longer using my color scheme in several places (XFCE panel, pinentry dialog, etc.)
2) Leafpad fails with a segfault.



Reproducible: Always

Steps to Reproduce:
1.  Install latest oxygen-gtk2 package.
2.  Launch my desktop (XFCE), which is set to use the oxygen-gtk style.
3.  Launch leafpad.

Actual Results:  
1.  XFCE panel shows in (default) silver color.
2. Pinentry dialog (i.e., launched to enable passphrase entry when I SSH into a machine) shows in default silver color.
3. Leafpad issues a segfault when I try to invoke it.

Expected Results:  
1. All of the above should display in the dark blue that I use in my KDE color configuration (See http://www.darose.net/Dark-Blue-Grey-Dave9.kcsrc), and not the default silver color.
2. Leafpad should be able to launch successfully.

Downgrading back to 1.3.1 makes the all of these problems go away.
Comment 1 Hugo Pereira Da Costa 2013-02-06 19:25:57 UTC
Thanks for reporting,
This is likely the same issue as for bug 272570.
I 'think' I know the reason for this, though the "buggy" change was introduce to fix some initialization issues under gnome 3.
I'll revert and find a better fix for gnome 3.
Will likely have a new bugfix release (like 1.3.2-1) by the end of the week. 
In the meanwhile please
- send this link to your distro bug
- recommand your distro to roll-back to 1.3.1 

Sorry for the trouble (and damn DEs, I must say)
Comment 2 Ruslan Kabatsayev 2013-02-06 19:46:55 UTC
Heh, I was wondering why I have some apps using half-correct and half-default color scheme :) ( http://i0.simplest-image-hosting.net/picture/screenshot-02062013-113913-pm.png )
I thought it was related to recent glibc upgrade, but now it appears that it's this bug.
Comment 3 Hugo Pereira Da Costa 2013-02-06 19:52:34 UTC
@Ruslan
nice that you can reproduce ! it means you'll be able to test my patches :)
here with KDE, all seems to be working, but many I did not test enough applications.
Comment 4 Hugo Pereira Da Costa 2013-02-06 19:59:54 UTC
@Ruslan
the details:
in 1.3.1, oxygen's initialisation happens in theme_init.
This is causing issues with gnome 3, because when theme_init is called, for some reason, gdkscreen is not yet defined, nor gtksettings (which we obviously need). You end up with zillions of warnings and initialization incomplete.
So I moved it to ::instance_init. This fixes all the issues I see with gnome 3, but obviously fails elsewhere: create recursive calls to instance_init for some (but not all applications), and some incomplete initialisations ...
So. Need to find a way to "try" to make the initialization twice, at both places, and keep the first one that works. Possibly by testing the validity of gdkscreen. 
Should work :)
But needs more testing than my too hasty release. (I guess I don't use enough gtk)
Comment 5 Hugo Pereira Da Costa 2013-02-06 20:00:09 UTC
PS: what's the application in your screenshot ?
Comment 6 Ruslan Kabatsayev 2013-02-06 20:12:44 UTC
(In reply to comment #5)
> PS: what's the application in your screenshot ?

It's one of my first GTK apps - inspired by windows task manager; incomplete&ugly inside, but still usable for logging CPU&memory usage. I can send it to you if you want to test your patches.
Comment 7 Ruslan Kabatsayev 2013-02-06 20:16:44 UTC
BTW, it seems we've missed actual 1.3.1 git tag - there's only 1.3.0 and 1.3.2.
Comment 8 Hugo Pereira Da Costa 2013-02-07 13:27:37 UTC
*** Bug 272570 has been marked as a duplicate of this bug. ***
Comment 9 Hugo Pereira Da Costa 2013-02-07 13:31:50 UTC
Created attachment 76974 [details]
proposed patch

Hi,
patch attached should fix the issues. It basically rollback the guilty change, add some more tests in settings initialisation and attempt at redoing the initialization in instance_init if it failed in theme_init.

So that things should be back to normal, and things are more or less working in gnome3 (no warning, and full initialization there too). More or less: some applications (e.g. ardour) are still crashing, but only for gnome 3 (because the first initialization fails).

in the end I suspect the latter behavior is actually an upstream bug ... Will investigate some more.

I'd be glad if reporters could check the patch, before pushing and creating a new release.
I can provide instructions on how to build code from source and apply the patch if needed.

Hugo
Comment 10 Hugo Pereira Da Costa 2013-02-07 13:34:25 UTC
Created attachment 76975 [details]
updated patch. Previous one was incomplete

Sorry for the noise; previous patch was incomplete, please ignore.
This one is complete ...

Hugo
Comment 11 Antonio Orefice 2013-02-07 14:38:11 UTC
The patch fixes my problem starting ardour, thanks.
Comment 12 David Rosenstrauch 2013-02-07 15:02:43 UTC
Looks fixed.  Colors display correctly in latest version, and leafpad doesn't segfault.

Thanks for the quick fix, Hugo!
Comment 13 Ruslan Kabatsayev 2013-02-07 15:04:17 UTC
Fixes my problems too. Also see this: http://simplest-image-hosting.net/png-0-screenshot-02072013-070231-pm . This is with OXYGEN_APPLICATION_NAME_OVERRIDE=asdfasf. Notice different colors in toolbar. The patch also fixes it.
Comment 14 Hugo Pereira Da Costa 2013-02-07 15:10:29 UTC
ok. Thanks for the testing.
Still, I'm not happy with ardour crashing under gnome 3.
And possibly all the 'other' issues you report there will also occur ... 
I'll push the change to git though.
Comment 15 Ruslan Kabatsayev 2013-02-14 20:42:25 UTC
*** Bug 315163 has been marked as a duplicate of this bug. ***
Comment 16 denk 2013-02-14 21:30:46 UTC
The recent bugfix release 1.3.2.1 doesn't fix it for me in Firefox.See dupe bug 315163.
Comment 17 Ruslan Kabatsayev 2013-02-14 21:33:34 UTC
(In reply to comment #16)
> The recent bugfix release 1.3.2.1 doesn't fix it for me in Firefox.See dupe
> bug 315163.

Strange. Could you provide a screenshot? I remember to have seen something similar before, but now it *is* fixed for me, maybe we are talking about different things.
Comment 18 denk 2013-02-16 09:13:31 UTC
Created attachment 77357 [details]
Screenshot of Firefox with grey textfields