Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
5.0.0 Beta 1
-
None
Description
In the destructor for the QQuickVisualDataModel when it's processing cacheItems, if the cacheItem is referenced and has an outstanding incubatorTask then there is the potential to leave a pointer to the QQuickVisualDataModel which is being destroyed in the QVDMIncubationTask (member variable 'vdm'). The incubationTask should probably be released in this case anyway.
This problem is tied in with another problem where a QQmlIncubator is incubating an object which has an invalid context. When the incubator attempts to execute vme.execute(&errors) in QQmlIncubatorPrivate::incubate(QQmlVME::Interrupt &i) the QQmlVMD::execute() method attempts to use an invalid context which asserts and this error would need to be propagated back up into the QQmlIncubatorPrivate::incubate() method.
Attachments
Gerrit Reviews
For Gerrit Dashboard: QTBUG-27002 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
33571,1 | Destroy incubating objects when a VisualDataModel is destroyed. | master | qt/qtdeclarative | Status: ABANDONED | 0 | 0 |