Bug 184749 - Device Notifier crashes Plasma if invalid predicates are present on the system
Summary: Device Notifier crashes Plasma if invalid predicates are present on the system
Status: RESOLVED FIXED
Alias: None
Product: plasma4
Classification: Unmaintained
Component: widget-devicenotifier (other bugs)
Version First Reported In: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on: 184751
Blocks:
  Show dependency treegraph
 
Reported: 2009-02-18 04:44 UTC by Ben Cooksley
Modified: 2009-06-24 03:57 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Cooksley 2009-02-18 04:44:09 UTC
Version:            (using Devel)
Compiler:          g++ (SUSE Linux) 4.3.2 [gcc-4_3-branch revision 141291] 
OS:                Linux
Installed from:    Compiled sources

If invalid solid predicates are present on the system, Plasma will crash on startup when the Device Notifier plasmoid is intialised. Examples of invalid predicates are the ones installed by K3b previous to commit 927669 ( which corrects them )

My KControl module also suffered from this, until I corrected it by ensuring they were valid ( Solid::Predicate::fromString(predicate).isValid() ) before attempting to use them.
Comment 1 Ben Cooksley 2009-02-18 05:18:43 UTC
Further investigation reveals that a bug in Solid::Predicate will cause a crash anyway. This is shown by a double free when isValid() is false.