diff options
author | Laszlo Agocs <laszlo.agocs@qt.io> | 2022-10-11 14:31:48 +0200 |
---|---|---|
committer | Laszlo Agocs <laszlo.agocs@qt.io> | 2022-10-17 09:03:16 +0200 |
commit | 2d381001dae9c5e590375232e7a95f245350e4ea (patch) | |
tree | fc97374a3a2ad0e64f05a6da5d8b08894f2b6c8d /src/widgets/kernel/qwidgetrepaintmanager.cpp | |
parent | 6e288701e837ca324ad6e95fce301b29879b4a28 (diff) |
Add missing repaintManager check
This is likely a problem only after the 6.4 changes to move QQuickWidget
composition from OpenGL to QRhi.
Add an extra check to the condition when bailing out.
In QWidgetPrivate (qwidget.cpp) all similar calls into the
repaintManager are guarded by
if (tlwExtra && tlwExtra->backingStore && tlwExtra->repaintManager)
therefore it makes sense to perform the same check in the other file too.
The assumption is that the check was not added here due to being outside
of qwidget.cpp.
Change-Id: Ic94d4e5153f4a194a997cd669b0f7c48c7932d97
Fixes: QTBUG-107166
Pick-to: 6.4
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'src/widgets/kernel/qwidgetrepaintmanager.cpp')
-rw-r--r-- | src/widgets/kernel/qwidgetrepaintmanager.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/widgets/kernel/qwidgetrepaintmanager.cpp b/src/widgets/kernel/qwidgetrepaintmanager.cpp index 4d5e4e6522..e83f9d4bb2 100644 --- a/src/widgets/kernel/qwidgetrepaintmanager.cpp +++ b/src/widgets/kernel/qwidgetrepaintmanager.cpp @@ -126,7 +126,7 @@ void QWidgetPrivate::invalidateBackingStore(const T &r) return; QTLWExtra *tlwExtra = q->window()->d_func()->maybeTopData(); - if (!tlwExtra || !tlwExtra->backingStore) + if (!tlwExtra || !tlwExtra->backingStore || !tlwExtra->repaintManager) return; T clipped(r); |