From 4eeafe1cbfa6a80a059df0df0a791840bca32b42 Mon Sep 17 00:00:00 2001 From: Sergio Martins Date: Mon, 9 Apr 2018 21:46:34 +0100 Subject: Fix crash if dock widget gets deleted while dragging By using a QPointer. Change-Id: I16832dadc9cd8cefc4f9f276b1242c0000097b95 Reviewed-by: Friedemann Kleint Reviewed-by: Richard Moe Gustavsen Reviewed-by: Olivier Goffart (Woboq GmbH) --- src/widgets/widgets/qmainwindowlayout.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/widgets/widgets/qmainwindowlayout.cpp b/src/widgets/widgets/qmainwindowlayout.cpp index 9b38da340c..9cf2e7de1f 100644 --- a/src/widgets/widgets/qmainwindowlayout.cpp +++ b/src/widgets/widgets/qmainwindowlayout.cpp @@ -68,6 +68,7 @@ #include #include #include +#include #ifndef QT_NO_DEBUG_STREAM # include @@ -1654,7 +1655,7 @@ void QMainWindowLayout::keepSize(QDockWidget *w) class QMainWindowTabBar : public QTabBar { QMainWindow *mainWindow; - QDockWidget *draggingDock; // Currently dragging (detached) dock widget + QPointer draggingDock; // Currently dragging (detached) dock widget public: QMainWindowTabBar(QMainWindow *parent); protected: @@ -1665,7 +1666,7 @@ protected: }; QMainWindowTabBar::QMainWindowTabBar(QMainWindow *parent) - : QTabBar(parent), mainWindow(parent), draggingDock(0) + : QTabBar(parent), mainWindow(parent) { setExpanding(false); } -- cgit v1.2.3