src/share/vm/runtime/reflection.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/runtime/reflection.cpp	Thu Jan  7 15:24:29 2010
--- new/src/share/vm/runtime/reflection.cpp	Thu Jan  7 15:24:29 2010

*** 1,7 **** --- 1,7 ---- /* ! * Copyright 1997-2009 Sun Microsystems, Inc. All Rights Reserved. ! * Copyright 1997-2010 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 480,489 **** --- 480,494 ---- // because one is inside the other. if (under_host_klass(accessor_ik, accessee) || under_host_klass(accessee_ik, accessor)) return true; + // Adapter frames can access anything. + if (MethodHandleCompiler::klass_is_method_handle_adapter_holder(accessor)) + // This is an internal adapter frame from the MethodHandleCompiler. + return true; + if (RelaxAccessControlCheck || (accessor_ik->major_version() < JAVA_1_5_VERSION && accessee_ik->major_version() < JAVA_1_5_VERSION)) { return classloader_only && Verifier::relax_verify_for(accessor_ik->class_loader()) &&

src/share/vm/runtime/reflection.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File