Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.3.1
-
Windows 7 (crash), Linux (valgrind errors)
-
0b0bb319578bb2e2eced3a80ce3876a4408b72a7 (qtdeclarative/dev, 29.7.2014)
Description
Deleting QQuickWidget cause crash after it's removed from the QMdiArea.
QQuickWidget *view = new QQuickWidget; mdiarea->addSubWindow(view); ... mdiarea->removeSubWindow(subWindow); subWindow->deleteLater(); // CRASH when subWindow cointains quickwidget
Same works without crash for QWidget. QMdiArea::removeSubWindow() documentation says it just set parent to 0 (like it does) but doesn't delete given widget so it has to do. But something goes wrong there with QuickWidget.
Actually simple subWindow->deleteLater() removes subWindow from the mdiarea so when need to delete just delete without removeSubWindow().
Other thing saw is that it's not possible to remove and add back QuickWidget SubWindow to mdiarea. This might be the root cause. Got ASSERT
ASSERT failure in QSGRenderContext::initialize: "already initialized!", file scenegraph\qsgcontext.cpp, line 439
Attachments
Issue Links
- relates to
-
QTBUG-42618 QQuickWidget crash when closing QMdiSubWindow
- Closed