diff options
Diffstat (limited to 'runtime/dex_file_verifier_test.cc')
-rw-r--r-- | runtime/dex_file_verifier_test.cc | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/runtime/dex_file_verifier_test.cc b/runtime/dex_file_verifier_test.cc index d0ce00f..93faeae 100644 --- a/runtime/dex_file_verifier_test.cc +++ b/runtime/dex_file_verifier_test.cc @@ -115,7 +115,14 @@ static const DexFile* OpenDexFileBase64(const char* base64, const char* location // read dex file ScopedObjectAccess soa(Thread::Current()); - return DexFile::Open(location, location, error_msg); + std::vector<const DexFile*> tmp; + bool success = DexFile::Open(location, location, error_msg, &tmp); + CHECK(success) << error_msg; + EXPECT_EQ(1U, tmp.size()); + const DexFile* dex_file = tmp[0]; + EXPECT_EQ(PROT_READ, dex_file->GetPermissions()); + EXPECT_TRUE(dex_file->IsReadOnly()); + return dex_file; } @@ -170,7 +177,15 @@ static const DexFile* FixChecksumAndOpen(byte* bytes, size_t length, const char* // read dex file ScopedObjectAccess soa(Thread::Current()); - return DexFile::Open(location, location, error_msg); + std::vector<const DexFile*> tmp; + if (!DexFile::Open(location, location, error_msg, &tmp)) { + return nullptr; + } + EXPECT_EQ(1U, tmp.size()); + const DexFile* dex_file = tmp[0]; + EXPECT_EQ(PROT_READ, dex_file->GetPermissions()); + EXPECT_TRUE(dex_file->IsReadOnly()); + return dex_file; } static bool ModifyAndLoad(const char* location, size_t offset, uint8_t new_val, |