summaryrefslogtreecommitdiffstats
path: root/src/gui/painting
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@qt.io>2023-07-19 11:15:06 +0200
committerLaszlo Agocs <laszlo.agocs@qt.io>2023-07-31 12:38:40 +0200
commit108b1014415a491cb0abb58c04a28a5c691085a1 (patch)
tree98bf1cafa345bcaf2ec31ab1dc23780568908e73 /src/gui/painting
parente98ee5f6f42fa0f645a85261a0f833d2059ae573 (diff)
Handle rhi init failures better in rhi backingstore flush
One may very well force a 3D API not functional. In this case there will be no QRhi. A bunch of warnings will be printed (which is good), but then flush() should not do anything, and that was not handled before. Pick-to: 6.6 6.5 Change-Id: I82139070311152c959d39a553842f4462d8e7811 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Diffstat (limited to 'src/gui/painting')
-rw-r--r--src/gui/painting/qbackingstoredefaultcompositor.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gui/painting/qbackingstoredefaultcompositor.cpp b/src/gui/painting/qbackingstoredefaultcompositor.cpp
index 998e6f7a8f..96df95c7f9 100644
--- a/src/gui/painting/qbackingstoredefaultcompositor.cpp
+++ b/src/gui/painting/qbackingstoredefaultcompositor.cpp
@@ -455,6 +455,9 @@ QPlatformBackingStore::FlushResult QBackingStoreDefaultCompositor::flush(QPlatfo
QPlatformTextureList *textures,
bool translucentBackground)
{
+ if (!rhi)
+ return QPlatformBackingStore::FlushFailed;
+
Q_ASSERT(textures); // may be empty if there are no render-to-texture widgets at all, but null it cannot be
if (!m_rhi) {