1.1 --- a/src/share/vm/oops/methodOop.cpp Fri Jul 16 08:29:42 2010 -0700 1.2 +++ b/src/share/vm/oops/methodOop.cpp Fri Jul 16 18:14:19 2010 -0700 1.3 @@ -851,9 +851,15 @@ 1.4 // MethodHandleCompiler. 1.5 // Must be consistent with MethodHandleCompiler::get_method_oop(). 1.6 bool methodOopDesc::is_method_handle_adapter() const { 1.7 - return (is_method_handle_invoke_name(name()) && 1.8 - is_synthetic() && 1.9 - MethodHandleCompiler::klass_is_method_handle_adapter_holder(method_holder())); 1.10 + if (is_synthetic() && 1.11 + !is_native() && // has code from MethodHandleCompiler 1.12 + is_method_handle_invoke_name(name()) && 1.13 + MethodHandleCompiler::klass_is_method_handle_adapter_holder(method_holder())) { 1.14 + assert(!is_method_handle_invoke(), "disjoint"); 1.15 + return true; 1.16 + } else { 1.17 + return false; 1.18 + } 1.19 } 1.20 1.21 methodHandle methodOopDesc::make_invoke_method(KlassHandle holder,