D10250: track the validity of the texture
Marco Martin
noreply at phabricator.kde.org
Fri Feb 2 15:06:32 UTC 2018
mart created this revision.
mart added a reviewer: Plasma.
Restricted Application added projects: Plasma, Frameworks.
Restricted Application added subscribers: Frameworks, plasma-devel.
mart requested review of this revision.
REVISION SUMMARY
the texture of ManagedTextureNode gets deleted by the
refcountung of the internal QSharedPointer,
but in some rare cases, it can be deleted too by some
external cause, usually when a widget changes its parent
window (either changing containment or switching between
full/collapsed view)
dragging a system monitor applet that uses the plotter
component between the desktop and panel quite reliably
crashes plasma, as it was trying to access the texture that may
have become invalid at the moment.
track it also with a qpointer which is used only to provide
an hasValidTexture boolean which should be checked before
accessing the texture of the node.
BUG:388508
BUG:374280
BUG:365052
BUG:343576
TEST PLAN
The bug is easily reproducible without the patch, wasn't
able to reproduce it anymore with it
REPOSITORY
R296 KDeclarative
BRANCH
phab/guardTexture
REVISION DETAIL
https://phabricator.kde.org/D10250
AFFECTED FILES
src/qmlcontrols/kquickcontrolsaddons/plotter.cpp
src/qmlcontrols/kquickcontrolsaddons/plotter.h
src/quickaddons/managedtexturenode.cpp
src/quickaddons/managedtexturenode.h
To: mart, #plasma
Cc: plasma-devel, #frameworks, michaelh, ZrenBot, ngraham, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20180202/31426261/attachment.html>
More information about the Plasma-devel
mailing list