Solid upower backend and kdeinit crash...

Chani chanika at gmail.com
Fri Oct 29 20:13:51 BST 2010


On October 29, 2010 19:48:49 Dawit A wrote:
> Hi,
> 
> The upower backend, more specifically the XRandrBrightness class,
> causes kdeinit to crash on my system when you come back from screen
> lock mode. This happens because when the check for the backlight
> property fails in the constructor of XRandrBrightness, which happens
> on my system, it returns immediately. That leaves the m_resources
> variable set to NULL. Unfortunately both the brightness and
> setBrightness member functions use m_resources without even bothering
> to check whether it is null or not and hence the crash. Actually, the
> call to XRandrBrightness::brightness can be traced one step back to
> PowerDevilUPowerBackend::brightness which also does not bother to
> check whether the action it wants to obtain is supported or not before
> calling it, i.e. it does not do  XRandrBrightness::isSupported...
> 
> Anyhow, the issue can be fixed in a couple of ways, not returning when
> backlight check fails in ctor or checking validity of the m_resources
> pointer before using it. Not sure which would be the correct fix
> though. Any ideas ?

checking pointers (and supportedness) is generally a good idea. :)

but... it returns in the *constructor*? that sounds a little odd. I hope the 
contructor has at least initialized all its variables by then, so that you 
know m_resources will be null and not random garbage. I'd probably have to 
read the code to know whether it was sane (and I can't tell what constructor 
you're referring to)

-- 
Chani
http://chani.ca
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20101029/5341eb52/attachment.sig>


More information about the kde-core-devel mailing list