Do not crash when encountering invalid plugin info.
AbandonedPublic

Authored by mwolff on Sep 9 2015, 10:26 AM.

Details

Summary

I've recently seen crashes when Plasma::RunnerManager calls
KPluginInfo::fromServices which then called setConfig on an
invalid KPluginInfo object which triggered the internal
KPLUGININFO_ISVALID_ASSERTION which uses a qFatal to kill the
whole parent application, even in release mode.

Add .arcconfig file.

Diff Detail

Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
mwolff updated this revision to Diff 837.Sep 9 2015, 10:26 AM
mwolff retitled this revision from to Do not crash when encountering invalid plugin info..
mwolff updated this object.
mwolff edited the test plan for this revision. (Show Details)
dfaure edited edge metadata.EditedSep 9 2015, 8:16 PM

"seems" ok, but KPluginInfo is mostly in the hands of Alex Richardson, lately.

(and this particular method hasn't changed since kde4, so I wonder)

arichardson edited edge metadata.Sep 10 2015, 1:48 PM
In D338#6651, @dfaure wrote:

"seems" ok, but KPluginInfo is mostly in the hands of Alex Richardson, lately.

(and this particular method hasn't changed since kde4, so I wonder)

Change looks good to me although I wonder how this assertion is being triggered.
Is there an invalid KService::Ptr in the list? Otherwise this could be due to my refactoring of the code that converts from a KService::Ptr to a KPluginInfo.
Would be good to investigate the root cause here but the added check is certainly a good idea.

mwolff abandoned this revision.Oct 28 2015, 9:43 AM

This was merged, I'l abandon it here as I don't see another way of closing this.