diff options
author | 2016-12-16 16:14:39 +0000 | |
---|---|---|
committer | 2016-12-16 16:14:39 +0000 | |
commit | d27097a6c9459d38e7c9f92a1fcfa77352a9e07d (patch) | |
tree | ed3f77c1e2329761b70335ff5cdc646b0e5ca4d9 /compiler/driver/compiler_driver.cc | |
parent | 0f69f7425cb966a9172c1d46ac33b1de01469a3c (diff) |
Clear exception if FindClass fails.
Test: verifier_deps_test.
bug: 30937355
Change-Id: I9916ec00010de012939462d4f30147e8b64fe279
Diffstat (limited to 'compiler/driver/compiler_driver.cc')
-rw-r--r-- | compiler/driver/compiler_driver.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/driver/compiler_driver.cc b/compiler/driver/compiler_driver.cc index b6b2575c3a..d1a5c4d9ab 100644 --- a/compiler/driver/compiler_driver.cc +++ b/compiler/driver/compiler_driver.cc @@ -2077,6 +2077,9 @@ void CompilerDriver::Verify(jobject jclass_loader, if (cls.Get() != nullptr) { ObjectLock<mirror::Class> lock(soa.Self(), cls); mirror::Class::SetStatus(cls, mirror::Class::kStatusVerified, soa.Self()); + } else { + DCHECK(soa.Self()->IsExceptionPending()); + soa.Self()->ClearException(); } // Create `VerifiedMethod`s for each methods, the compiler expects one for // quickening or compiling. |