Mercurial > hg > graal-jvmci-8
diff src/share/vm/classfile/verificationType.cpp @ 1677:a5c9d63a187d
6964170: Verifier crashes
Summary: Check if klassOop != NULL rather than klass_part != NULL
Reviewed-by: kamg, never
author | apangin |
---|---|
date | Tue, 20 Jul 2010 08:41:42 -0700 |
parents | c18cbe5936b8 |
children | 60f88489896f |
line wrap: on
line diff
--- a/src/share/vm/classfile/verificationType.cpp Sat Jul 17 21:49:23 2010 -0700 +++ b/src/share/vm/classfile/verificationType.cpp Tue Jul 20 08:41:42 2010 -0700 @@ -70,7 +70,9 @@ } else if (is_array() && from.is_array()) { VerificationType comp_this = get_component(CHECK_false); VerificationType comp_from = from.get_component(CHECK_false); - return comp_this.is_assignable_from(comp_from, context, CHECK_false); + if (!comp_this.is_bogus() && !comp_from.is_bogus()) { + return comp_this.is_assignable_from(comp_from, context, CHECK_false); + } } return false; } @@ -98,7 +100,7 @@ CHECK_(VerificationType::bogus_type())); return VerificationType::reference_type(component); default: - ShouldNotReachHere(); + // Met an invalid type signature, e.g. [X return VerificationType::bogus_type(); } }