summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Carlstrom <bdc@google.com>2013-10-17 20:47:08 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2013-10-17 20:47:09 +0000
commitbcf09e40f1b5edb7c7e90a96efadba5482b13551 (patch)
tree171418abf72b142d997ef907ff817c6377140c86
parent19b3456534e55826399f1614592db9ca001a78d9 (diff)
parentfb2f70c7678d33c2027cdd0285d8b5421876e6aa (diff)
downloadart-bcf09e40f1b5edb7c7e90a96efadba5482b13551.tar.gz
art-bcf09e40f1b5edb7c7e90a96efadba5482b13551.tar.bz2
art-bcf09e40f1b5edb7c7e90a96efadba5482b13551.zip
Merge "Fix dumpsys meminfo for art" into klp-dev
-rw-r--r--runtime/utils.cc2
-rw-r--r--runtime/utils_test.cc14
2 files changed, 15 insertions, 1 deletions
diff --git a/runtime/utils.cc b/runtime/utils.cc
index 8e810a7663..bf36bf3e85 100644
--- a/runtime/utils.cc
+++ b/runtime/utils.cc
@@ -1196,7 +1196,7 @@ std::string GetDalvikCacheFilenameOrDie(const std::string& location) {
LOG(FATAL) << "Expected path in location to be absolute: "<< location;
}
std::string cache_file(location, 1); // skip leading slash
- if (!EndsWith(location, ".dex") || !EndsWith(location, ".art")) {
+ if (!EndsWith(location, ".dex") && !EndsWith(location, ".art")) {
cache_file += "/";
cache_file += DexFile::kClassesDex;
}
diff --git a/runtime/utils_test.cc b/runtime/utils_test.cc
index 2633964b57..b43177b4fd 100644
--- a/runtime/utils_test.cc
+++ b/runtime/utils_test.cc
@@ -335,4 +335,18 @@ TEST_F(UtilsTest, EndsWith) {
EXPECT_FALSE(EndsWith("oo", "foo"));
}
+void CheckGetDalvikCacheFilenameOrDie(const char* in, const char* out) {
+ std::string expected(getenv("ANDROID_DATA"));
+ expected += "/dalvik-cache/";
+ expected += out;
+ EXPECT_STREQ(expected.c_str(), GetDalvikCacheFilenameOrDie(in).c_str());
+}
+
+TEST_F(UtilsTest, GetDalvikCacheFilenameOrDie) {
+ CheckGetDalvikCacheFilenameOrDie("/system/app/Foo.apk", "system@app@Foo.apk@classes.dex");
+ CheckGetDalvikCacheFilenameOrDie("/data/app/foo-1.apk", "data@app@foo-1.apk@classes.dex");
+ CheckGetDalvikCacheFilenameOrDie("/system/framework/core.jar", "system@framework@core.jar@classes.dex");
+ CheckGetDalvikCacheFilenameOrDie("/system/framework/boot.art", "system@framework@boot.art");
+}
+
} // namespace art