summaryrefslogtreecommitdiff
path: root/libs/androidfw/AssetManager.cpp
diff options
context:
space:
mode:
authorYusuke Sato <yusukes@google.com>2015-08-03 16:21:10 -0700
committerYusuke Sato <yusukes@google.com>2015-08-03 17:24:42 -0700
commit05f648e1d3cbbe31173d9134cda6056c79d5a4a4 (patch)
treef5515069c0734f708dad4dc6a637f0c4db81e3a0 /libs/androidfw/AssetManager.cpp
parent957c23775f46c26142bc6d4f9a592ac4586a9ef8 (diff)
Clean up AssetManager::scanAndMergeZipLocked
Now that ZipFileRO::startIteration supports prefix/suffix matching, we can pass dirName to the function for simpler code and slightly better performance. (cherry-pick of c796ad0a8be6df4a3b354690dfe5ce1df8136c09) Change-Id: I0e2ac58de28020c2af8d8e569a97592b09596185
Diffstat (limited to 'libs/androidfw/AssetManager.cpp')
-rw-r--r--libs/androidfw/AssetManager.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/libs/androidfw/AssetManager.cpp b/libs/androidfw/AssetManager.cpp
index 2dc1c96259c0..1c39ffef6fd4 100644
--- a/libs/androidfw/AssetManager.cpp
+++ b/libs/androidfw/AssetManager.cpp
@@ -1545,7 +1545,7 @@ bool AssetManager::scanAndMergeZipLocked(SortedVector<AssetDir::FileInfo>* pMerg
*/
int dirNameLen = dirName.length();
void *iterationCookie;
- if (!pZip->startIteration(&iterationCookie)) {
+ if (!pZip->startIteration(&iterationCookie, dirName.string(), NULL)) {
ALOGW("ZipFileRO::startIteration returned false");
return false;
}
@@ -1560,9 +1560,7 @@ bool AssetManager::scanAndMergeZipLocked(SortedVector<AssetDir::FileInfo>* pMerg
continue;
}
//printf("Comparing %s in %s?\n", nameBuf, dirName.string());
- if (dirNameLen == 0 ||
- (strncmp(nameBuf, dirName.string(), dirNameLen) == 0 &&
- nameBuf[dirNameLen] == '/'))
+ if (dirNameLen == 0 || nameBuf[dirNameLen] == '/')
{
const char* cp;
const char* nextSlash;