summaryrefslogtreecommitdiff
path: root/libs/androidfw/AssetManager2.cpp
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2019-02-12 04:11:52 +0000
committerandroid-build-team Robot <android-build-team-robot@google.com>2019-02-12 04:11:52 +0000
commit13327cc461d8f54550866bc404a99205f95ab92f (patch)
tree3bbca8b95f5be9a8b82ad5a6fe31282a01cb376f /libs/androidfw/AssetManager2.cpp
parent295083e9e621c9b9e790b304c087858c329e5074 (diff)
parent9f6f2e7990dd14b89f03a4ce8dd8c648c9ff2855 (diff)
Snap for 5301221 from 9f6f2e7990dd14b89f03a4ce8dd8c648c9ff2855 to qt-release
Change-Id: Ib7179b6a319109199da3b3d01a987451dd9e3f74
Diffstat (limited to 'libs/androidfw/AssetManager2.cpp')
-rw-r--r--libs/androidfw/AssetManager2.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/libs/androidfw/AssetManager2.cpp b/libs/androidfw/AssetManager2.cpp
index 81afd937d85e..66d8542553d2 100644
--- a/libs/androidfw/AssetManager2.cpp
+++ b/libs/androidfw/AssetManager2.cpp
@@ -203,6 +203,27 @@ const DynamicRefTable* AssetManager2::GetDynamicRefTableForCookie(ApkAssetsCooki
return nullptr;
}
+const std::unordered_map<std::string, std::string>*
+ AssetManager2::GetOverlayableMapForPackage(uint32_t package_id) const {
+
+ if (package_id >= package_ids_.size()) {
+ return nullptr;
+ }
+
+ const size_t idx = package_ids_[package_id];
+ if (idx == 0xff) {
+ return nullptr;
+ }
+
+ const PackageGroup& package_group = package_groups_[idx];
+ if (package_group.packages_.size() == 0) {
+ return nullptr;
+ }
+
+ const auto loaded_package = package_group.packages_[0].loaded_package_;
+ return &loaded_package->GetOverlayableMap();
+}
+
void AssetManager2::SetConfiguration(const ResTable_config& configuration) {
const int diff = configuration_.diff(configuration);
configuration_ = configuration;