Skip to content

Commit cba5bd2

Browse files
author
Eric McCorkle
committed
8058322: Zero name_index item of MethodParameters attribute cause MalformedParameterException
Allow hotspot to report null for 0 parameter_name index in MethodParameters attribute Reviewed-by: coleenp, dholmes
1 parent bbd7b05 commit cba5bd2

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

hotspot/src/share/vm/runtime/reflection.cpp

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -806,17 +806,16 @@ oop Reflection::new_field(fieldDescriptor* fd, TRAPS) {
806806

807807
oop Reflection::new_parameter(Handle method, int index, Symbol* sym,
808808
int flags, TRAPS) {
809-
Handle name;
810809

811-
// A null symbol here translates to the empty string
810+
Handle rh = java_lang_reflect_Parameter::create(CHECK_NULL);
811+
812812
if(NULL != sym) {
813-
name = java_lang_String::create_from_symbol(sym, CHECK_NULL);
813+
Handle name = java_lang_String::create_from_symbol(sym, CHECK_NULL);
814+
java_lang_reflect_Parameter::set_name(rh(), name());
814815
} else {
815-
name = java_lang_String::create_from_str("", CHECK_NULL);
816+
java_lang_reflect_Parameter::set_name(rh(), NULL);
816817
}
817818

818-
Handle rh = java_lang_reflect_Parameter::create(CHECK_NULL);
819-
java_lang_reflect_Parameter::set_name(rh(), name());
820819
java_lang_reflect_Parameter::set_modifiers(rh(), flags);
821820
java_lang_reflect_Parameter::set_executable(rh(), method());
822821
java_lang_reflect_Parameter::set_index(rh(), index);

0 commit comments

Comments
 (0)