aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorSimjees Abraham <simjees.abraham@nokia.com>2012-03-28 15:09:28 +0200
committerQt by Nokia <qt-info@nokia.com>2012-03-28 16:50:29 +0200
commitbb8c3906d8c71c063b779e07262fc2b122efeb9b (patch)
treeff80411a5e40cdcee6f11e96313bde3977d3dda0 /src/plugins
parent7f5bbcbc3cbe0017538b986bcfa8c134e9e2572e (diff)
Fixed the crash in Zoomtool when the app is exited when ZoomTool is active.
Change-Id: Ibc97665ddf789bd10c5256c02b8471ec2f4e9855 Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.cpp10
-rw-r--r--src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.h3
2 files changed, 8 insertions, 5 deletions
diff --git a/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.cpp b/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.cpp
index 171f1a52e9..3efd816b00 100644
--- a/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.cpp
+++ b/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.cpp
@@ -75,10 +75,12 @@ ZoomTool::ZoomTool(QQuickViewInspector *inspector, QQuickView *view) :
ZoomTool::~ZoomTool()
{
// restoring the original states.
- m_rootItem->setScale(m_originalScale);
- m_rootItem->setPos(m_originalPosition);
- if (!m_originalSmooth)
- m_rootItem->setSmooth(m_originalSmooth);
+ if (m_rootItem) {
+ m_rootItem->setScale(m_originalScale);
+ m_rootItem->setPos(m_originalPosition);
+ if (!m_originalSmooth)
+ m_rootItem->setSmooth(m_originalSmooth);
+ }
}
void ZoomTool::mousePressEvent(QMouseEvent *event)
diff --git a/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.h b/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.h
index 02ed8e09df..6787d7a7f4 100644
--- a/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.h
+++ b/src/plugins/qmltooling/qmldbg_qtquick2/zoomtool.h
@@ -45,6 +45,7 @@
#include "abstracttool.h"
#include <QtCore/QPointF>
+#include <QtCore/QPointer>
QT_FORWARD_DECLARE_CLASS(QQuickView)
QT_FORWARD_DECLARE_CLASS(QQuickItem)
@@ -92,7 +93,7 @@ private:
bool m_originalSmooth;
bool m_dragStarted;
bool m_pinchStarted;
- QQuickItem *m_rootItem;
+ QPointer<QQuickItem> m_rootItem;
QPointF m_adjustedOrigin;
QPointF m_dragStartPosition;
QPointF m_mousePosition;