aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2016-11-07 10:25:59 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2016-11-10 12:45:21 +0000
commite518441cf636a2839d58d23f9853dbcdeeaad85a (patch)
treebbd3e7fe088cc404b3ac8d592ab3622264823dce /src
parentb0160eb96e47a20f2ac28b7dbb327c87460cb9da (diff)
Let nested groups inherit the parent group's file tags
Tags should behave the same as module properties in that respect. Change-Id: I5cbfde9c2cf90eef93feef0a8ffd894309341577 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/lib/corelib/language/projectresolver.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/corelib/language/projectresolver.cpp b/src/lib/corelib/language/projectresolver.cpp
index f6e390bff..f2910787f 100644
--- a/src/lib/corelib/language/projectresolver.cpp
+++ b/src/lib/corelib/language/projectresolver.cpp
@@ -670,8 +670,12 @@ void ProjectResolver::resolveGroup(Item *item, ProjectContext *projectContext)
bool fileTagsSet;
group->fileTags = m_evaluator->fileTagsValue(item, QLatin1String("fileTags"), &fileTagsSet);
group->overrideTags = m_evaluator->boolValue(item, QLatin1String("overrideTags"));
- if (group->overrideTags && group->fileTags.isEmpty() && fileTagsSet)
- group->fileTags.insert(unknownFileTag());
+ if (group->overrideTags && fileTagsSet) {
+ if (group->fileTags.isEmpty() )
+ group->fileTags.insert(unknownFileTag());
+ } else if (m_productContext->currentGroup) {
+ group->fileTags.unite(m_productContext->currentGroup->fileTags);
+ }
const CodeLocation filesLocation = item->property(QLatin1String("files"))->location();
ErrorInfo fileError;