summaryrefslogtreecommitdiff
path: root/tools/aapt2/ResourceParser.cpp
diff options
context:
space:
mode:
author Winson Chiu <chiuwinson@google.com> 2022-03-04 22:48:41 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2022-03-04 22:48:41 +0000
commit2222f486b2cb67904506b40d5f946b867b85dc76 (patch)
treea8fe8c12623a10e9809e16bfe3454a101ea1e868 /tools/aapt2/ResourceParser.cpp
parent5302762a22ace8094c06a622f9993c2f00dfe852 (diff)
parentc84829d2d49ff19af91e01c6ed12894ecb328d96 (diff)
Merge "AAPT2: support removed_ entries in groups" into tm-dev
Diffstat (limited to 'tools/aapt2/ResourceParser.cpp')
-rw-r--r--tools/aapt2/ResourceParser.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/aapt2/ResourceParser.cpp b/tools/aapt2/ResourceParser.cpp
index 42715f9c3592..8d35eeec2a93 100644
--- a/tools/aapt2/ResourceParser.cpp
+++ b/tools/aapt2/ResourceParser.cpp
@@ -1038,6 +1038,13 @@ bool static ParseGroupImpl(xml::XmlPullParser* parser, ParsedResource* out_resou
continue;
}
+ if (maybe_name.value().substr(0, std::strlen("removed_")) == "removed_") {
+ // Skip resources that have been removed from the framework, but leave a hole so that
+ // other staged resources don't shift and break apps previously compiled against them
+ next_id.id++;
+ continue;
+ }
+
ParsedResource& entry_res = out_resource->child_resources.emplace_back(ParsedResource{
.name = ResourceName{{}, *parsed_type, maybe_name.value().to_string()},
.source = item_source,