Description
Build QDS against Qt 6.3 and create a new Quick 3D project to reproduce.
Editormode puppet often crashes on startup and when 3D edit view is resized with QDS built against Qt 6.3. When this happens, you have to manually reset the puppet to clear the "Qt Quick emulation layer crashed" message box on form editor.
The crash happens in Renderer::uploadMergedElement, where vertexData is nullptr.
It's likely some kind of timing issue since it doesn't happen always. Also, the startup crash doesn't happen if use the "Debug QML emulation layer" feature to block the puppet at startup and attach debugger to it.
Stack trace from the resize crash:
1 memcpy VCRUNTIME140 0x7ffa332f15d8 2 QSGBatchRenderer::Renderer::uploadMergedElement qsgbatchrenderer.cpp 1888 0x7ff9c2e3ca36 3 QSGBatchRenderer::Renderer::uploadBatch qsgbatchrenderer.cpp 2121 0x7ff9c2e3c031 4 QSGBatchRenderer::Renderer::prepareRenderPass qsgbatchrenderer.cpp 3637 0x7ff9c2e337a5 5 QSGBatchRenderer::Renderer::render qsgbatchrenderer.cpp 3488 0x7ff9c2e38258 6 QSGRenderer::renderScene qsgrenderer.cpp 176 0x7ff9c2e451fe 7 QQuickWindowPrivate::renderSceneGraph qquickwindow.cpp 686 0x7ff9c2e0ce86 8 QQuickRenderControl::render qquickrendercontrol.cpp 448 0x7ff9c2db5e14 9 QmlDesigner::Qt5NodeInstanceServer::grabRenderControl qt5nodeinstanceserver.cpp 293 0x7ff74381d014 10 QmlDesigner::Qt5InformationNodeInstanceServer::doRender3DEditView qt5informationnodeinstanceserver.cpp 930 0x7ff7437e7c94 11 doActivate<0> qobject.cpp 3914 0x7ff9ca5ac790 12 QMetaObject::activate qobject.cpp 3975 0x7ff9ca5aea94 13 QTimer::timerEvent qtimer.cpp 299 0x7ff9ca5c3f27 14 QObject::event qobject.cpp 1378 0x7ff9ca5b4e57 15 QApplicationPrivate::notify_helper qapplication.cpp 3334 0x7ff9caa7201e 16 QApplication::notify qapplication.cpp 3286 0x7ff9caa710da 17 QCoreApplication::notifyInternal2 qcoreapplication.cpp 1063 0x7ff9ca573a75 18 QEventDispatcherWin32Private::sendTimerEvent qeventdispatcher_win.cpp 407 0x7ff9ca6cb1db 19 QEventDispatcherWin32::event qeventdispatcher_win.cpp 889 0x7ff9ca6c8982 20 QApplicationPrivate::notify_helper qapplication.cpp 3334 0x7ff9caa7201e ... <More>