diff options
author | Brian Carlstrom <bdc@google.com> | 2013-09-30 17:56:45 -0700 |
---|---|---|
committer | Brian Carlstrom <bdc@google.com> | 2013-09-30 18:16:16 -0700 |
commit | 6f277751ec5bfc0d7469b2cc7f7134e9032593f1 (patch) | |
tree | 46e76b5a0c7e9fe1a3ac5602d8e37b11aac00d92 /oatdump | |
parent | eb1efc4575e93543ed459c7ee5c6c36109e69b5f (diff) | |
download | art-6f277751ec5bfc0d7469b2cc7f7134e9032593f1.zip art-6f277751ec5bfc0d7469b2cc7f7134e9032593f1.tar.gz art-6f277751ec5bfc0d7469b2cc7f7134e9032593f1.tar.bz2 |
Make oatdump support image file generated on device
Bug: 11012947
Change-Id: Ic7bce4cbf1c00e219c2d312e85b27b980b1396f2
Diffstat (limited to 'oatdump')
-rw-r--r-- | oatdump/oatdump.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/oatdump/oatdump.cc b/oatdump/oatdump.cc index fc9e00c..bc450bb 100644 --- a/oatdump/oatdump.cc +++ b/oatdump/oatdump.cc @@ -777,7 +777,17 @@ class ImageDumper { } os << "STATS:\n" << std::flush; UniquePtr<File> file(OS::OpenFileForReading(image_filename_.c_str())); - stats_.file_bytes = file->GetLength(); + if (file.get() == NULL) { + std::string cache_location(GetDalvikCacheFilenameOrDie(image_filename_)); + file.reset(OS::OpenFileForReading(cache_location.c_str())); + if (file.get() == NULL) { + LOG(WARNING) << "Failed to find image in " << image_filename_ + << " and " << cache_location; + } + } + if (file.get() != NULL) { + stats_.file_bytes = file->GetLength(); + } size_t header_bytes = sizeof(ImageHeader); stats_.header_bytes = header_bytes; size_t alignment_bytes = RoundUp(header_bytes, kObjectAlignment) - header_bytes; |