/hg/release/icedtea7-forest-2.1/jdk: 2 new changesets
andrew at icedtea.classpath.org
andrew at icedtea.classpath.org
Mon Mar 11 02:03:12 PDT 2013
changeset 90e4cb6f78bb in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=90e4cb6f78bb
author: jrose
date: Fri Jan 18 20:47:51 2013 -0800
8006179: JSR292 MethodHandles lookup with interface using findVirtual()
Reviewed-by: twisti
changeset 1040c44a496d in /hg/release/icedtea7-forest-2.1/jdk
details: http://icedtea.classpath.org/hg/release/icedtea7-forest-2.1/jdk?cmd=changeset;node=1040c44a496d
author: andrew
date: Mon Mar 11 08:14:04 2013 +0000
8006882: Proxy generated classes in sun.proxy package breaks JMockit
Reviewed-by: alanb, ahgross
diffstat:
src/share/classes/java/lang/invoke/DirectMethodHandle.java | 9 +++++++++
src/share/classes/java/lang/reflect/Proxy.java | 2 +-
src/share/classes/sun/reflect/misc/ReflectUtil.java | 2 +-
src/share/lib/security/java.security | 2 ++
src/share/lib/security/java.security-solaris | 2 ++
src/share/lib/security/java.security-windows | 2 ++
6 files changed, 17 insertions(+), 2 deletions(-)
diffs (98 lines):
diff -r 0ad964f2ced1 -r 1040c44a496d src/share/classes/java/lang/invoke/DirectMethodHandle.java
--- a/src/share/classes/java/lang/invoke/DirectMethodHandle.java Fri Mar 08 15:53:50 2013 +0000
+++ b/src/share/classes/java/lang/invoke/DirectMethodHandle.java Mon Mar 11 08:14:04 2013 +0000
@@ -44,6 +44,15 @@
if (!m.isResolved())
throw new InternalError();
+ if (m.getDeclaringClass().isInterface() && !m.isAbstract()) {
+ // Check for corner case: invokeinterface of Object method.
+ MemberName m2 = new MemberName(Object.class, m.getName(), m.getMethodType(), m.getModifiers());
+ m2 = MemberName.getFactory().resolveOrNull(m2, false, null);
+ if (m2 != null && m2.isPublic()) {
+ m = m2;
+ }
+ }
+
MethodHandleNatives.init(this, (Object) m, doDispatch, lookupClass);
}
diff -r 0ad964f2ced1 -r 1040c44a496d src/share/classes/java/lang/reflect/Proxy.java
--- a/src/share/classes/java/lang/reflect/Proxy.java Fri Mar 08 15:53:50 2013 +0000
+++ b/src/share/classes/java/lang/reflect/Proxy.java Mon Mar 11 08:14:04 2013 +0000
@@ -609,7 +609,7 @@
}
if (proxyPkg == null) {
- // if no non-public proxy interfaces, use sun.proxy package
+ // if no non-public proxy interfaces, use com.sun.proxy package
proxyPkg = ReflectUtil.PROXY_PACKAGE + ".";
}
diff -r 0ad964f2ced1 -r 1040c44a496d src/share/classes/sun/reflect/misc/ReflectUtil.java
--- a/src/share/classes/sun/reflect/misc/ReflectUtil.java Fri Mar 08 15:53:50 2013 +0000
+++ b/src/share/classes/sun/reflect/misc/ReflectUtil.java Mon Mar 11 08:14:04 2013 +0000
@@ -202,5 +202,5 @@
}
}
- public static final String PROXY_PACKAGE = "sun.proxy";
+ public static final String PROXY_PACKAGE = "com.sun.proxy";
}
diff -r 0ad964f2ced1 -r 1040c44a496d src/share/lib/security/java.security
--- a/src/share/lib/security/java.security Fri Mar 08 15:53:50 2013 +0000
+++ b/src/share/lib/security/java.security Mon Mar 11 08:14:04 2013 +0000
@@ -128,6 +128,7 @@
com.sun.imageio.,\
com.sun.istack.internal.,\
com.sun.jmx.,\
+ com.sun.proxy.,\
com.sun.org.apache.xerces.internal.utils.,\
com.sun.org.apache.xalan.internal.utils.,\
com.sun.org.glassfish.external.,\
@@ -148,6 +149,7 @@
com.sun.imageio.,\
com.sun.istack.internal.,\
com.sun.jmx.,\
+ com.sun.proxy.,\
com.sun.org.apache.xerces.internal.utils.,\
com.sun.org.apache.xalan.internal.utils.,\
com.sun.org.glassfish.external.,\
diff -r 0ad964f2ced1 -r 1040c44a496d src/share/lib/security/java.security-solaris
--- a/src/share/lib/security/java.security-solaris Fri Mar 08 15:53:50 2013 +0000
+++ b/src/share/lib/security/java.security-solaris Mon Mar 11 08:14:04 2013 +0000
@@ -129,6 +129,7 @@
com.sun.imageio.,\
com.sun.istack.internal.,\
com.sun.jmx.,\
+ com.sun.proxy.,\
com.sun.org.apache.xerces.internal.utils.,\
com.sun.org.apache.xalan.internal.utils.,\
com.sun.org.glassfish.external.,\
@@ -149,6 +150,7 @@
com.sun.imageio.,\
com.sun.istack.internal.,\
com.sun.jmx.,\
+ com.sun.proxy.,\
com.sun.org.apache.xerces.internal.utils.,\
com.sun.org.apache.xalan.internal.utils.,\
com.sun.org.glassfish.external.,\
diff -r 0ad964f2ced1 -r 1040c44a496d src/share/lib/security/java.security-windows
--- a/src/share/lib/security/java.security-windows Fri Mar 08 15:53:50 2013 +0000
+++ b/src/share/lib/security/java.security-windows Mon Mar 11 08:14:04 2013 +0000
@@ -129,6 +129,7 @@
com.sun.imageio.,\
com.sun.istack.internal.,\
com.sun.jmx.,\
+ com.sun.proxy.,\
com.sun.org.apache.xerces.internal.utils.,\
com.sun.org.apache.xalan.internal.utils.,\
com.sun.org.glassfish.external.,\
@@ -149,6 +150,7 @@
com.sun.imageio.,\
com.sun.istack.internal.,\
com.sun.jmx.,\
+ com.sun.proxy.,\
com.sun.org.apache.xerces.internal.utils.,\
com.sun.org.apache.xalan.internal.utils.,\
com.sun.org.glassfish.external.,\
More information about the distro-pkg-dev
mailing list