diff options
author | Eike Ziller <eike.ziller@qt.io> | 2017-07-28 15:24:14 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2017-07-28 15:24:14 +0200 |
commit | c01ddc4660c10e8ddc605602fd623135fb607de0 (patch) | |
tree | fdf50dee801ce09d2a6d671d558b73d8769870d9 /src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp | |
parent | 712297cbf0b73d8af8db3921c646ed252b0c41d7 (diff) | |
parent | 36968528805d99a746d27f2632cabc1a132e535f (diff) | |
download | qt-creator-c01ddc4660c10e8ddc605602fd623135fb607de0.tar.gz |
Merge remote-tracking branch 'origin/4.4'
Conflicts:
qbs/modules/qtc/qtc.qbs
qtcreator.pri
src/plugins/qbsprojectmanager/qbsproject.h
Change-Id: I6b9cdf704be95ade02488c8b19582b6621282fb8
Diffstat (limited to 'src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp')
-rw-r--r-- | src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp b/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp index ddaeafc29f..614069e0b3 100644 --- a/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp +++ b/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp @@ -758,6 +758,13 @@ void ModelController::moveObject(MPackage *newOwner, MObject *object) QMT_ASSERT(object, return); QMT_ASSERT(object != m_rootPackage, return); + // verify that newOwner is not a child of object + MObject *newOwnerObject = newOwner; + while (newOwnerObject && newOwnerObject != object) + newOwnerObject = newOwnerObject->owner(); + if (newOwnerObject == object) + return; + if (newOwner != object->owner()) { int formerRow = 0; MObject *formerOwner = object->owner(); |