From 5db396d5cc780ecf13cdfd25c8af15a220065f14 Mon Sep 17 00:00:00 2001 From: Ryan Mitchell Date: Mon, 5 Nov 2018 15:56:15 -0800 Subject: Only resolve non-dynamic resource references Only resolve non-dynamic references and attributes if the package is loaded as a library or if a shared library is attempting to retrieve its own resources. Bug: 116486668 Bug: 116620612 Test: libandroidfw_tests & manual test of broken apps & atest FieldsClassificationTest#testGetAlgorith Change-Id: Icb827796a65072a39452dbe577d5e18f085ea4e2 --- libs/androidfw/AssetManager2.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'libs/androidfw/AssetManager2.cpp') diff --git a/libs/androidfw/AssetManager2.cpp b/libs/androidfw/AssetManager2.cpp index 288ba32c47a6..9e6948878b1d 100644 --- a/libs/androidfw/AssetManager2.cpp +++ b/libs/androidfw/AssetManager2.cpp @@ -162,6 +162,13 @@ void AssetManager2::DumpToLog() const { LOG(INFO) << base::StringPrintf("PG (%02x): ", package_group.dynamic_ref_table.mAssignedPackageId) << list; + + for (size_t i = 0; i < 256; i++) { + if (package_group.dynamic_ref_table.mLookupTable[i] != 0) { + LOG(INFO) << base::StringPrintf(" e[0x%02x] -> 0x%02x", (uint8_t) i, + package_group.dynamic_ref_table.mLookupTable[i]); + } + } } } -- cgit v1.2.3-59-g8ed1b