src/share/vm/runtime/reflection.cpp

changeset 550
e7a91a357527
parent 486
1ffa5cdd0b7e
child 631
d1605aabd0a1
equal deleted inserted replaced
548:ba764ed4b6f2 550:e7a91a357527
498 498
499 if (access.is_protected()) { 499 if (access.is_protected()) {
500 if (!protected_restriction) { 500 if (!protected_restriction) {
501 // See if current_class is a subclass of field_class 501 // See if current_class is a subclass of field_class
502 if (Klass::cast(current_class)->is_subclass_of(field_class)) { 502 if (Klass::cast(current_class)->is_subclass_of(field_class)) {
503 if (current_class == resolved_class || 503 if (access.is_static() || // static fields are ok, see 6622385
504 current_class == resolved_class ||
504 field_class == resolved_class || 505 field_class == resolved_class ||
505 Klass::cast(current_class)->is_subclass_of(resolved_class) || 506 Klass::cast(current_class)->is_subclass_of(resolved_class) ||
506 Klass::cast(resolved_class)->is_subclass_of(current_class)) { 507 Klass::cast(resolved_class)->is_subclass_of(current_class)) {
507 return true; 508 return true;
508 } 509 }

mercurial