summaryrefslogtreecommitdiff
path: root/libs/androidfw/Idmap.cpp
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
commit99b48bdd872e8b2a48904f513b4b9feb8299750e (patch)
treee11efcb7a5d16f457d8392e1c796ea31813bb1b8 /libs/androidfw/Idmap.cpp
parent6e4275255688ab4e7a0bc5602f4ba1ee2958cff4 (diff)
Revert "[res] Optimize isUpToDate() for ApkAssets"
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: I7d0eeaf7476c66f5276c68320f93f2b56953d531
Diffstat (limited to 'libs/androidfw/Idmap.cpp')
-rw-r--r--libs/androidfw/Idmap.cpp21
1 files changed, 6 insertions, 15 deletions
diff --git a/libs/androidfw/Idmap.cpp b/libs/androidfw/Idmap.cpp
index 262e7df185b7..3ecd82b074a1 100644
--- a/libs/androidfw/Idmap.cpp
+++ b/libs/androidfw/Idmap.cpp
@@ -22,10 +22,9 @@
#include "android-base/logging.h"
#include "android-base/stringprintf.h"
#include "android-base/utf8.h"
-#include "androidfw/AssetManager.h"
+#include "androidfw/misc.h"
#include "androidfw/ResourceTypes.h"
#include "androidfw/Util.h"
-#include "androidfw/misc.h"
#include "utils/ByteOrder.h"
#include "utils/Trace.h"
@@ -269,16 +268,11 @@ LoadedIdmap::LoadedIdmap(const std::string& idmap_path, const Idmap_header* head
configurations_(configs),
overlay_entries_(overlay_entries),
string_pool_(std::move(string_pool)),
+ idmap_fd_(
+ android::base::utf8::open(idmap_path.c_str(), O_RDONLY | O_CLOEXEC | O_BINARY | O_PATH)),
overlay_apk_path_(overlay_apk_path),
target_apk_path_(target_apk_path),
- idmap_last_mod_time_(kInvalidModDate) {
- if (!isReadonlyFilesystem(std::string(overlay_apk_path_).c_str()) ||
- !(target_apk_path_ == AssetManager::TARGET_APK_PATH ||
- isReadonlyFilesystem(std::string(target_apk_path_).c_str()))) {
- idmap_fd_.reset(
- android::base::utf8::open(idmap_path.c_str(), O_RDONLY | O_CLOEXEC | O_BINARY | O_PATH));
- idmap_last_mod_time_ = getFileModDate(idmap_fd_);
- }
+ idmap_last_mod_time_(getFileModDate(idmap_fd_.get())) {
}
std::unique_ptr<LoadedIdmap> LoadedIdmap::Load(StringPiece idmap_path, StringPiece idmap_data) {
@@ -387,11 +381,8 @@ std::unique_ptr<LoadedIdmap> LoadedIdmap::Load(StringPiece idmap_path, StringPie
overlay_entries, std::move(idmap_string_pool), *overlay_path, *target_path));
}
-UpToDate LoadedIdmap::IsUpToDate() const {
- if (idmap_last_mod_time_ == kInvalidModDate) {
- return UpToDate::Always;
- }
- return fromBool(idmap_last_mod_time_ == getFileModDate(idmap_fd_.get()));
+bool LoadedIdmap::IsUpToDate() const {
+ return idmap_last_mod_time_ == getFileModDate(idmap_fd_.get());
}
} // namespace android