diff options
author | Aurélien Brooke <aurelien@bahiasoft.fr> | 2024-02-26 09:52:16 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2024-02-28 17:28:11 +0000 |
commit | 703a4c13527858798218017e2eedc9c833f505b9 (patch) | |
tree | 44fe58a7efc4f3979cc8cb5eec8cb147134ddde0 | |
parent | 9c6ab32a9c30e8dbf2d0639e04542305e88e46b7 (diff) |
Fix crash in QPaintedTextureImage when never calling repaint()
When creating a QPaintedTextureImage without calling repaint() nor
resizing, Qt 3D crashes because there is not generator created.
Even though it is not a normal use case, avoid crashing, by creating an
empty generator in the constructor.
Fixes: QTBUG-122613
Change-Id: Iac5abd7d728330c5fa28e3de49a1e7ff261ace3f
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
(cherry picked from commit b1767913a2f8b1e366ff426f74380fbc06f92b7a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 836b0f057f284fe04a82588d6658deee40601b26)
-rw-r--r-- | src/render/texture/qpaintedtextureimage.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/render/texture/qpaintedtextureimage.cpp b/src/render/texture/qpaintedtextureimage.cpp index a26183428..631bc5aec 100644 --- a/src/render/texture/qpaintedtextureimage.cpp +++ b/src/render/texture/qpaintedtextureimage.cpp @@ -66,6 +66,9 @@ void QPaintedTextureImagePrivate::repaint() QPaintedTextureImage::QPaintedTextureImage(Qt3DCore::QNode *parent) : QAbstractTextureImage(*new QPaintedTextureImagePrivate, parent) { + Q_D(QPaintedTextureImage); + + d->m_currentGenerator = QSharedPointer<QPaintedTextureImageDataGenerator>::create(QImage{}, 0, id()); } QPaintedTextureImage::~QPaintedTextureImage() |