From 4b3acf03fbfcd4a181f2bd0b10435efccae0ebe5 Mon Sep 17 00:00:00 2001 From: Jochen Becher Date: Tue, 25 Jul 2017 22:35:42 +0200 Subject: [PATCH 1/2] ModelEditor: Fix a crash moving packages into itself Change-Id: I1a722b9514ee0a57d8bd8be2f4ea05ed87c6686d Task-number: QTCREATORBUG-18262 Reviewed-by: Tobias Hunger --- .../modelinglib/qmt/model_controller/modelcontroller.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp b/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp index 2b940f012a4..9257e149b30 100644 --- a/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp +++ b/src/libs/modelinglib/qmt/model_controller/modelcontroller.cpp @@ -756,6 +756,13 @@ void ModelController::moveObject(MPackage *newOwner, MObject *object) QMT_CHECK(object); QMT_CHECK(object != m_rootPackage); + // 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(); From 48d3fd1af578c03657e74ecba09430ac00683b4e Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Fri, 28 Jul 2017 13:16:29 +0200 Subject: [PATCH 2/2] Dev package: Collect from all directories except tests/ and share/ Except for the qmlpuppet directories under share/. Some plugins have other directories to look into than plugins/. Change-Id: I89cc61d02c39ecee2cfb6db72986003651ca4b9c Reviewed-by: Eike Ziller --- scripts/createDevPackage.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/scripts/createDevPackage.py b/scripts/createDevPackage.py index f9b7a3f0e3c..05577438f98 100755 --- a/scripts/createDevPackage.py +++ b/scripts/createDevPackage.py @@ -57,17 +57,16 @@ def parse_arguments(): source_include_patterns = [ # directories - r"^scripts/.*$", # everything under scripts/ - r"^doc/.*$", # everything under doc/ + r"^(?!(share|tests)/.*$)(.*/)?$", # look into all directories except under share/ and tests/ r"^share/(qtcreator/(qml/(qmlpuppet/(.*/)?)?)?)?$", # for shared headers for qt quick designer plugins - r"^src/(.*/)?$", # all directories under src/ - r"^plugins/(.*/)?$", # all directories under plugins/ (if this is run on extra plugin repositories) # files r"^HACKING$", r"^LICENSE.*$", r"^README.md$", - r"^.*\.pri$", - r"^.*\.h$", + r"^scripts/.*$", # include everything under scripts/ + r"^doc/.*$", # include everything under doc/ + r"^.*\.pri$", # .pri files in all directories that are looked into + r"^.*\.h$", # .h files in all directories that are looked into ] build_include_patterns = [