summaryrefslogtreecommitdiff
path: root/tools/aapt2/java/ProguardRules.cpp
diff options
context:
space:
mode:
authorMartijn Coenen <maco@google.com>2019-03-06 15:06:17 +0100
committerMartijn Coenen <maco@google.com>2019-03-06 15:06:17 +0100
commit6c83e0c5c9985a99e2960a9b80eb443e175243c2 (patch)
tree829ee9e3fb9f089b1362e6db53f795294f455e62 /tools/aapt2/java/ProguardRules.cpp
parent101ac58981754e5e1b35ea5cf88f41fd14768891 (diff)
Make sure Proguard keeps zygote preload class.
Bug: 127262679 Test: atest ProguardRulesTest Change-Id: Ib082404e08d98b25fcecbf680afb4af37fe2786b
Diffstat (limited to 'tools/aapt2/java/ProguardRules.cpp')
-rw-r--r--tools/aapt2/java/ProguardRules.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/tools/aapt2/java/ProguardRules.cpp b/tools/aapt2/java/ProguardRules.cpp
index 52e168ed47aa..05ba8f05ec67 100644
--- a/tools/aapt2/java/ProguardRules.cpp
+++ b/tools/aapt2/java/ProguardRules.cpp
@@ -281,6 +281,15 @@ class ManifestVisitor : public BaseVisitor {
AddClass(node->line_number, result.value(), "");
}
}
+
+ attr = node->FindAttribute(xml::kSchemaAndroid, "zygotePreloadName");
+ if (attr) {
+ Maybe<std::string> result = util::GetFullyQualifiedClassName(package_, attr->value);
+ if (result) {
+ AddClass(node->line_number, result.value(), "");
+ }
+ }
+
if (main_dex_only_) {
xml::Attribute* default_process = node->FindAttribute(xml::kSchemaAndroid, "process");
if (default_process) {