summaryrefslogtreecommitdiff
path: root/src/lib/buildgraph/inputartifactscanner.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/buildgraph/inputartifactscanner.cpp')
-rw-r--r--src/lib/buildgraph/inputartifactscanner.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/buildgraph/inputartifactscanner.cpp b/src/lib/buildgraph/inputartifactscanner.cpp
index f40e378fe..9c357e8e5 100644
--- a/src/lib/buildgraph/inputartifactscanner.cpp
+++ b/src/lib/buildgraph/inputartifactscanner.cpp
@@ -161,9 +161,10 @@ void InputArtifactScanner::scan()
// Remove all connections to children that were added by the dependency scanner.
// They will be regenerated.
foreach (Artifact *dependency, m_artifact->childrenAddedByScanner)
+ if (!dependency || m_artifact->transformer->inputs.contains(dependency))
disconnect(m_artifact, dependency, m_logger);
- ArtifactList::const_iterator it = m_artifact->transformer->inputs.begin();
+ ArtifactSet::const_iterator it = m_artifact->transformer->inputs.begin();
for (; it != m_artifact->transformer->inputs.end(); ++it) {
Artifact *inputArtifact = *it;
QStringList includePaths;
@@ -352,7 +353,7 @@ void InputArtifactScanner::handleDependency(ResolvedDependency &dependency)
} else {
if (m_artifact->children.contains(artifactDependency))
return;
- if (insertIntoProduct && !product->buildData->artifacts.contains(artifactDependency))
+ if (insertIntoProduct && !product->buildData->nodes.contains(artifactDependency))
insertArtifact(product, artifactDependency, m_logger);
safeConnect(m_artifact, artifactDependency, m_logger);
m_artifact->childrenAddedByScanner += artifactDependency;