diff options
author | Sergio Martins <sergio.martins@kdab.com> | 2016-12-05 22:04:25 +0000 |
---|---|---|
committer | Sérgio Martins <sergio.martins@kdab.com> | 2016-12-06 15:34:53 +0000 |
commit | 0382bb2ab830898fa14b6e42d5ca1b105f6693a7 (patch) | |
tree | 496cb8c60c53dd7ecb06da3d5baafcbead85f9c1 /src/widgets/widgets | |
parent | 3c4febf5571e2a34846e6377688676dbd034556b (diff) |
Fix crash when dragging a tab off QDockWidgetGroupWindow
Crashes later in QMainWindowLayout::hover()
Change-Id: Ibf1085ebfa7b0edcbd1662b0300550788b7f9c33
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Diffstat (limited to 'src/widgets/widgets')
-rw-r--r-- | src/widgets/widgets/qdockwidget.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/widgets/widgets/qdockwidget.cpp b/src/widgets/widgets/qdockwidget.cpp index 1df7259aba..c9cb826213 100644 --- a/src/widgets/widgets/qdockwidget.cpp +++ b/src/widgets/widgets/qdockwidget.cpp @@ -797,8 +797,10 @@ void QDockWidgetPrivate::endDrag(bool abort) if (abort || !mwLayout->plug(state->widgetItem)) { if (hasFeature(this, QDockWidget::DockWidgetFloatable)) { // This QDockWidget will now stay in the floating state. - if (state->ownWidgetItem) + if (state->ownWidgetItem) { delete state->widgetItem; + state->widgetItem = nullptr; + } mwLayout->restore(); QDockWidgetLayout *dwLayout = qobject_cast<QDockWidgetLayout*>(layout); if (!dwLayout->nativeWindowDeco()) { |