aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2017-11-06 10:04:59 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2017-11-06 09:29:25 +0000
commit1fbdea32bf9b1251e006434680f0e9da8117ca93 (patch)
tree1c9d57275de2ef53d87d67210f22fd2b2c28eebe /src
parent38715491eef958be049b15b37276fcb708738a4b (diff)
Fix change tracking for rules with more than one command
We have to accumulate the accessed properties, otherwise the ones from the previous command will be overwritten. Change-Id: I094327f1bc31ec19770747a70e62461fa46d8e98 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/lib/corelib/buildgraph/executorjob.cpp1
-rw-r--r--src/lib/corelib/buildgraph/jscommandexecutor.cpp2
2 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/corelib/buildgraph/executorjob.cpp b/src/lib/corelib/buildgraph/executorjob.cpp
index 628426adf..0fc056857 100644
--- a/src/lib/corelib/buildgraph/executorjob.cpp
+++ b/src/lib/corelib/buildgraph/executorjob.cpp
@@ -103,6 +103,7 @@ void ExecutorJob::run(Transformer *t)
}
t->propertiesRequestedInCommands.clear();
+ t->propertiesRequestedFromArtifactInCommands.clear();
QBS_CHECK(!t->outputs.isEmpty());
m_processCommandExecutor->setProcessEnvironment(
(*t->outputs.cbegin())->product->buildEnvironment);
diff --git a/src/lib/corelib/buildgraph/jscommandexecutor.cpp b/src/lib/corelib/buildgraph/jscommandexecutor.cpp
index 3e9d35cfc..d74ae12bc 100644
--- a/src/lib/corelib/buildgraph/jscommandexecutor.cpp
+++ b/src/lib/corelib/buildgraph/jscommandexecutor.cpp
@@ -142,7 +142,7 @@ private:
transformer->propertiesRequestedInCommands
+= scriptEngine->propertiesRequestedInScript();
transformer->propertiesRequestedFromArtifactInCommands
- = scriptEngine->propertiesRequestedFromArtifact();
+ .unite(scriptEngine->propertiesRequestedFromArtifact());
scriptEngine->clearRequestedProperties();
if (scriptEngine->hasUncaughtException()) {
// ### We don't know the line number of the command's sourceCode property assignment.