summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@digia.com>2014-06-19 15:34:44 +0200
committerTobias Hunger <tobias.hunger@digia.com>2014-06-25 17:46:09 +0200
commit05d4cc5d29c2b1f29f976139bf760df7661890fd (patch)
treeb93ae70e73cac936c8d99017fbe11e3b964f3704 /src
parent7df97f77bc4689ad665e9f1c904ed28fed8ad19e (diff)
downloadqt-creator-05d4cc5d29c2b1f29f976139bf760df7661890fd.tar.gz
Project Import: Make sure all values are fully set up
Call setup on all kitinformation that were not explicitly set when creating a temporary kit while importing an existing build. Task-number: QTCREATORBUG-12186 Change-Id: I655ecef10122a96d81e5ed222e80fbffcbb51e17 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp b/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp
index ab1cd48d33..a51dbb0338 100644
--- a/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp
+++ b/src/plugins/qmakeprojectmanager/qmakeprojectimporter.cpp
@@ -245,6 +245,9 @@ ProjectExplorer::Kit *QmakeProjectImporter::createTemporaryKit(QtSupport::BaseQt
const Utils::FileName &parsedSpec)
{
ProjectExplorer::Kit *k = new ProjectExplorer::Kit;
+
+ ProjectExplorer::KitGuard guard(k);
+
QtSupport::QtKitInformation::setQtVersion(k, version);
ProjectExplorer::ToolChainKitInformation::setToolChain(k, version->preferredToolChain(parsedSpec));
QmakeKitInformation::setMkspec(k, parsedSpec);
@@ -253,7 +256,16 @@ ProjectExplorer::Kit *QmakeProjectImporter::createTemporaryKit(QtSupport::BaseQt
if (temporaryVersion)
k->setValue(QT_IS_TEMPORARY, version->uniqueId());
+ // Set up other values:
+ foreach (ProjectExplorer::KitInformation *ki, ProjectExplorer::KitManager::kitInformation()) {
+ if (ki->id() == ProjectExplorer::ToolChainKitInformation::id()
+ || ki->id() == QtSupport::QtKitInformation::id())
+ continue;
+ ki->setup(k);
+ }
+
k->setDisplayName(version->displayName());
+
setIsUpdating(true);
ProjectExplorer::KitManager::registerKit(k);
setIsUpdating(false);