summaryrefslogtreecommitdiff
path: root/src/dex_verifier.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/dex_verifier.cc')
-rw-r--r--src/dex_verifier.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/dex_verifier.cc b/src/dex_verifier.cc
index 25fadb0c91..117218657b 100644
--- a/src/dex_verifier.cc
+++ b/src/dex_verifier.cc
@@ -900,6 +900,9 @@ bool DexVerifier::VerifyClass(const Class* klass) {
return false;
}
if (super != NULL) {
+ // Acquire lock to prevent races on verifying the super class
+ ObjectLock lock(super);
+
if (!super->IsVerified() && !super->IsErroneous()) {
Runtime::Current()->GetClassLinker()->VerifyClass(super);
}