src/share/vm/prims/methodHandles.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/prims/methodHandles.cpp	Mon Oct 14 23:03:09 2013
--- new/src/share/vm/prims/methodHandles.cpp	Mon Oct 14 23:03:08 2013

*** 1170,1183 **** --- 1170,1187 ---- if (vmtarget == NULL) { x = NULL; } else if (vmtarget->is_klass()) { x = ((Klass*) vmtarget)->java_mirror(); } else if (vmtarget->is_method()) { Handle mname2 = MethodHandles::new_MemberName(CHECK_NULL); CallInfo info((Method*)vmtarget); + methodHandle m = info.resolved_method(); + x = m->method_holder()->get_member_name(m->method_idnum()); + if (x == NULL) { + Handle mname2 = MethodHandles::new_MemberName(CHECK_NULL); x = MethodHandles::init_method_MemberName(mname2, info); } + } result->obj_at_put(1, x); return JNIHandles::make_local(env, result()); } JVM_END

src/share/vm/prims/methodHandles.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File