Bug 269425

Summary: Geany crashes on startup
Product: [Plasma] Oxygen Reporter: peppexmail
Component: gtk2-engineAssignee: Hugo Pereira Da Costa <hugo.pereira.da.costa>
Status: CLOSED FIXED    
Severity: normal CC: b7.10110111, hugo.pereira.da.costa, web
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: Geany Backtrace

Description peppexmail 2011-03-25 23:13:14 UTC
Created attachment 58343 [details]
Geany Backtrace

Version:           unspecified (using KDE 4.6.1) 
OS:                Linux

A Segmentation fault is raised when Geany starts and oxygen-gtk style is in use.
oxygen-gtk: version 1.0.3-1
geany: all versions I tested

Reproducible: Always




It seems to be fixed with the oxygen-gtk-git 20110325-1 version.
Comment 1 Hugo Pereira Da Costa 2011-03-25 23:16:12 UTC
ah yes. QToolBar. Thats why. We grab explicitly from QToolBar; not from the mainwindow below. I assume this is why it is not working. 
I'll work on a fix.
Thanks for posting your code !
(cant even remember why I had to force grabbing manually from a toolbar. Will have a look).
Comment 2 Hugo Pereira Da Costa 2011-03-25 23:16:52 UTC
ignore comment #1, that was for another bug report
Comment 3 Hugo Pereira Da Costa 2011-03-25 23:20:40 UTC
I can reproduce.
Indeed fixed in master.
Will keep you posted.
Comment 4 Hugo Pereira Da Costa 2011-03-25 23:26:39 UTC
ok. So in fact, its also fixed in the 1.0 branch. So it will be in 1.0.4 when it is out (in 3 weeks from now).

In the meanwhile, you'll have to compile the code on your own, getting the sources either via: 

git clone git://git.kde.org/oxygen-gtk (master branch)
or git clone -b 1.0 git://git.kde.org/oxygen-gtk (1.0 branch)

Closing as fixed (since there is not much else we can do on 1.0.3, and it will be in 1.0.4)
Comment 5 Hugo Pereira Da Costa 2011-03-26 01:15:34 UTC
For the record, after checking with git bisect (in "reversed" mode), the commit that fixed it is:

b1dd2dd223262ed13afdb487240ebf458f62ec66
Fall back to Cairo image surface if no valid screen is found when calling Oxygen::StyleHelper::initializeRefSurface CCBUG: 268494
    
Which makes sense. 
Probably Geany needs our ref::surface *before* any valid GtkScreen is defined. 
To keep in mind in order to prevent future regressions.