use a shared qml engine for all ConfigModules in the same process
this avoids some crashes as creating and deleting stuff from
different engines is known to cause crashes in the v4 garbage collection
and is recomended to use a single QQmlEngine per process
Details
- Reviewers
davidedmundson - Group Reviewers
Plasma - Commits
- R296:fcecbc5c67f7: use a single QML engine
normal SystemSettings seems unaffected, plasma mobile systemsettings
which is qml-only now doesn't crash anymore after loading a module
for the second time
currently ported modules used on desktop are
- desktop theme
- look and feel
- sound
- splash screen
- boot splash
they all seem to work correctly
i also invite others to test them
Diff Detail
- Repository
- R296 KDeclarative
- Branch
- arcpatch-D8436
- Lint
No Linters Available - Unit
No Unit Test Coverage
src/quickaddons/configmodule.cpp | ||
---|---|---|
106 ↗ | (On Diff #21184) | !!!!!!!!!!!!!!!!!!!!!!!!!! |
src/quickaddons/configmodule.cpp | ||
---|---|---|
106 ↗ | (On Diff #21184) | right, since it keeps track of attached properties in this way, either gets changed or is not possible to use a single engine, damn :/ hmm, maybe using the rootcontext instead would work |
src/quickaddons/configmodule.cpp | ||
---|---|---|
106 ↗ | (On Diff #21184) | this version now should work, as the context is used now: the way the static attached property function finds it is quite an heuristic, but should be 100% reliable |
Given the fallout we had when we made the similar change in Plasma, please don't merge until the start of the next release cycle.
Can you expand your "normal system settings seems unaffected" into something more thorough with a list of the relevant KCMs.
after november first week release? ok
Can you expand your "normal system settings seems unaffected" into something more thorough with a list of the relevant KCMs.
currently ported modules are
- desktop theme
- look and feel
- sound
- splash screen
- boot splash