summaryrefslogtreecommitdiff
path: root/libs/androidfw
diff options
context:
space:
mode:
author ESWAR MAGATAPALLI (xWF) <eswarrao@google.com> 2025-01-08 05:57:41 -0800
committer ESWAR MAGATAPALLI (xWF) <eswarrao@google.com> 2025-01-08 05:57:41 -0800
commiteb759ec58d1617699afa76f42a0965b41bab0bb2 (patch)
tree99fff5e17f758bd8b195b3a604d5db05c4d2e95f /libs/androidfw
parent7c92db080e9a3039be3614622f223ede52dd3f17 (diff)
Revert "[res] Don't create extra asset provider when not needed"
Revert submission 31021037 Reason for revert: Droidmonitor created revert due to b/388342212. Will be verifying through ABTD before submission. Reverted changes: /q/submissionid:31021037 Change-Id: Ic1964e2db736cfa3db3835a52c00cc81acda0bde
Diffstat (limited to 'libs/androidfw')
-rw-r--r--libs/androidfw/AssetsProvider.cpp17
-rw-r--r--libs/androidfw/include/androidfw/AssetsProvider.h2
2 files changed, 7 insertions, 12 deletions
diff --git a/libs/androidfw/AssetsProvider.cpp b/libs/androidfw/AssetsProvider.cpp
index 11b12eb030a6..59c6aba7b8b0 100644
--- a/libs/androidfw/AssetsProvider.cpp
+++ b/libs/androidfw/AssetsProvider.cpp
@@ -24,8 +24,9 @@
#include <ziparchive/zip_archive.h>
namespace android {
-
-static constexpr std::string_view kEmptyDebugString = "<empty>";
+namespace {
+constexpr const char* kEmptyDebugString = "<empty>";
+} // namespace
std::unique_ptr<Asset> AssetsProvider::Open(const std::string& path, Asset::AccessMode mode,
bool* file_exists) const {
@@ -355,14 +356,8 @@ MultiAssetsProvider::MultiAssetsProvider(std::unique_ptr<AssetsProvider>&& prima
std::unique_ptr<AssetsProvider> MultiAssetsProvider::Create(
std::unique_ptr<AssetsProvider>&& primary, std::unique_ptr<AssetsProvider>&& secondary) {
- if (primary == nullptr && secondary == nullptr) {
- return EmptyAssetsProvider::Create();
- }
- if (!primary) {
- return secondary;
- }
- if (!secondary) {
- return primary;
+ if (primary == nullptr || secondary == nullptr) {
+ return nullptr;
}
return std::unique_ptr<MultiAssetsProvider>(new MultiAssetsProvider(std::move(primary),
std::move(secondary)));
@@ -430,7 +425,7 @@ const std::string& EmptyAssetsProvider::GetDebugName() const {
if (path_.has_value()) {
return *path_;
}
- constexpr static std::string kEmpty{kEmptyDebugString};
+ const static std::string kEmpty = kEmptyDebugString;
return kEmpty;
}
diff --git a/libs/androidfw/include/androidfw/AssetsProvider.h b/libs/androidfw/include/androidfw/AssetsProvider.h
index e3b3ae41f7f4..46d7a57ab763 100644
--- a/libs/androidfw/include/androidfw/AssetsProvider.h
+++ b/libs/androidfw/include/androidfw/AssetsProvider.h
@@ -164,7 +164,7 @@ struct DirectoryAssetsProvider : public AssetsProvider {
// `secondary` asset provider if the asset cannot be found in the `primary`.
struct MultiAssetsProvider : public AssetsProvider {
static std::unique_ptr<AssetsProvider> Create(std::unique_ptr<AssetsProvider>&& primary,
- std::unique_ptr<AssetsProvider>&& secondary = {});
+ std::unique_ptr<AssetsProvider>&& secondary);
bool ForEachFile(const std::string& root_path,
base::function_ref<void(StringPiece, FileType)> f) const override;