8024804: Crash when InterfaceMethodref resolves to Object.registerNatives

Added check for NULL prior to continuation of method look up to avoid runtime crash during look up of Object's superclass' methods.

Reviewed-by: coleenp, hseigel
This commit is contained in:
Lois Foltan 2013-10-16 14:32:05 -04:00 committed by Harold Seigel
parent ec5d05699e
commit 21627fb02f
2 changed files with 47 additions and 1 deletions

View file

@ -248,7 +248,7 @@ void LinkResolver::lookup_method_in_klasses(methodHandle& result, KlassHandle kl
void LinkResolver::lookup_instance_method_in_klasses(methodHandle& result, KlassHandle klass, Symbol* name, Symbol* signature, TRAPS) {
Method* result_oop = klass->uncached_lookup_method(name, signature);
result = methodHandle(THREAD, result_oop);
while (!result.is_null() && result->is_static()) {
while (!result.is_null() && result->is_static() && result->method_holder()->super() != NULL) {
klass = KlassHandle(THREAD, result->method_holder()->super());
result = methodHandle(THREAD, klass->uncached_lookup_method(name, signature));
}