diff options
author | Aurélien Brooke <aurelien@bahiasoft.fr> | 2023-03-19 08:29:25 +0100 |
---|---|---|
committer | Aurélien Brooke <aurelien@bahiasoft.fr> | 2023-03-20 11:43:46 +0100 |
commit | 0e66d82ec30eb1800774e121c534579181aa6d07 (patch) | |
tree | ef147f1d15e2d7953008e8c0d3e3d4ebaf60bfc8 /src | |
parent | 68f7673c1dcc4ec3e407b121442390bbb34aed37 (diff) | |
download | qt3d-0e66d82ec30eb1800774e121c534579181aa6d07.tar.gz |
Scene3D: fix crash in setItemAreaAndDevicePixelRatio when entity is null
Pick-to: 6.5
Change-Id: Ib4ced4fa56fb038b5ee440e0f4e752b2d2570abe
Reviewed-by: Mike Krus <mike.krus@kdab.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/quick3d/imports/scene3d/scene3ditem.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/quick3d/imports/scene3d/scene3ditem.cpp b/src/quick3d/imports/scene3d/scene3ditem.cpp index a65fb8baa..53f238927 100644 --- a/src/quick3d/imports/scene3d/scene3ditem.cpp +++ b/src/quick3d/imports/scene3d/scene3ditem.cpp @@ -548,8 +548,11 @@ void Scene3DItem::createDummySurface(QWindow *rw, Qt3DRender::QRenderSurfaceSele */ void Scene3DItem::setItemAreaAndDevicePixelRatio(QSize area, qreal devicePixelRatio) { - Qt3DRender::QRenderSurfaceSelector *surfaceSelector - = Qt3DRender::QRenderSurfaceSelectorPrivate::find(entity()); + Qt3DCore::QEntity *rootEntity = entity(); + if (!rootEntity) { + return; + } + Qt3DRender::QRenderSurfaceSelector *surfaceSelector = Qt3DRender::QRenderSurfaceSelectorPrivate::find(rootEntity); if (surfaceSelector) { surfaceSelector->setExternalRenderTargetSize(area); surfaceSelector->setSurfacePixelRatio(devicePixelRatio); |