summaryrefslogtreecommitdiff
path: root/tools/aapt2/ResourceTable.cpp
diff options
context:
space:
mode:
author Jeremy Meyer <jakmcbane@google.com> 2024-08-14 11:16:58 -0700
committer Jeremy Meyer <jakmcbane@google.com> 2024-08-15 14:39:42 -0700
commitd52bd6858a6b2913f46e57bca0d96d5212416f10 (patch)
tree344a52e787e6e0064193d0b176ba58fd50d71c00 /tools/aapt2/ResourceTable.cpp
parentd439c6190e217780329f747d18e9683fce8a5002 (diff)
Flag support for bag resource types
Test: Automated Bug: 329436914 Flag: EXEMPT Aconfig not supported on host tools Change-Id: I891c93c3ffcab172d28701b44a80c50f1e24d99e
Diffstat (limited to 'tools/aapt2/ResourceTable.cpp')
-rw-r--r--tools/aapt2/ResourceTable.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/tools/aapt2/ResourceTable.cpp b/tools/aapt2/ResourceTable.cpp
index 1cdb71551d5d..7a4f40e471d2 100644
--- a/tools/aapt2/ResourceTable.cpp
+++ b/tools/aapt2/ResourceTable.cpp
@@ -605,12 +605,12 @@ bool ResourceTable::AddResource(NewResource&& res, android::IDiagnostics* diag)
if (!config_value->value) {
// Resource does not exist, add it now.
config_value->value = std::move(res.value);
- config_value->flag_status = res.flag_status;
} else {
// When validation is enabled, ensure that a resource cannot have multiple values defined for
// the same configuration unless protected by flags.
- auto result = validate ? ResolveFlagCollision(config_value->flag_status, res.flag_status)
- : CollisionResult::kKeepBoth;
+ auto result =
+ validate ? ResolveFlagCollision(config_value->value->GetFlagStatus(), res.flag_status)
+ : CollisionResult::kKeepBoth;
if (result == CollisionResult::kConflict) {
result = ResolveValueCollision(config_value->value.get(), res.value.get());
}
@@ -619,7 +619,6 @@ bool ResourceTable::AddResource(NewResource&& res, android::IDiagnostics* diag)
// Insert the value ignoring for duplicate configurations
entry->values.push_back(util::make_unique<ResourceConfigValue>(res.config, res.product));
entry->values.back()->value = std::move(res.value);
- entry->values.back()->flag_status = res.flag_status;
break;
case CollisionResult::kTakeNew: