summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNing Zhang <ning.n.zhang@ericsson.com>2018-12-04 17:36:51 +0100
committerGitHub <noreply@github.com>2018-12-04 17:36:51 +0100
commit4f32527ae1db863250eefb51b9ac08d70665fe1c (patch)
tree0c7c092e1a804da25108d64defdb76b534af66b1
parent10f4eaf582721005fefc77c6d20c91d2c4981629 (diff)
parenta82e2d71bd3da248dab836f4e150ff08cc0e6915 (diff)
downloadjavassist-4f32527ae1db863250eefb51b9ac08d70665fe1c.tar.gz
javassist-4f32527ae1db863250eefb51b9ac08d70665fe1c.zip
Merge pull request #2 from jboss-javassist/master
Sync with master /jboss-javassist/javassist/.
-rw-r--r--build.xml4
-rw-r--r--javassist.jarbin766405 -> 766400 bytes
-rw-r--r--pom.xml4
-rw-r--r--src/main/javassist/util/proxy/ProxyFactory.java4
-rw-r--r--src/test/javassist/proxyfactory/ProxyFactoryTest.java12
5 files changed, 19 insertions, 5 deletions
diff --git a/build.xml b/build.xml
index ec805b0f..1c3f8b0f 100644
--- a/build.xml
+++ b/build.xml
@@ -79,8 +79,8 @@
destdir="${build.classes.dir}"
debug="on"
deprecation="on"
- source="1.8"
- target="1.8"
+ source="1.7"
+ target="1.7"
optimize="off"
includeantruntime="true"
includes="**">
diff --git a/javassist.jar b/javassist.jar
index 73e3f0fd..3099d18a 100644
--- a/javassist.jar
+++ b/javassist.jar
Binary files differ
diff --git a/pom.xml b/pom.xml
index c1fc343c..6d42cf18 100644
--- a/pom.xml
+++ b/pom.xml
@@ -151,8 +151,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
- <source>1.8</source>
- <target>1.8</target>
+ <source>1.7</source>
+ <target>1.7</target>
<testSource>11</testSource>
<testTarget>11</testTarget>
<testCompilerArgument>-parameters</testCompilerArgument>
diff --git a/src/main/javassist/util/proxy/ProxyFactory.java b/src/main/javassist/util/proxy/ProxyFactory.java
index 0c39a508..55f13059 100644
--- a/src/main/javassist/util/proxy/ProxyFactory.java
+++ b/src/main/javassist/util/proxy/ProxyFactory.java
@@ -622,7 +622,9 @@ public class ProxyFactory {
* {@code java.lang.invoke.MethodHandles.Lookup}.
*/
private Class<?> getClassInTheSamePackage() {
- if (superClass != null && superClass != OBJECT_TYPE)
+ if (basename.startsWith("javassist.util.proxy.")) // maybe the super class is java.*
+ return this.getClass();
+ else if (superClass != null && superClass != OBJECT_TYPE)
return superClass;
else if (interfaces != null && interfaces.length > 0)
return interfaces[0];
diff --git a/src/test/javassist/proxyfactory/ProxyFactoryTest.java b/src/test/javassist/proxyfactory/ProxyFactoryTest.java
index 3189b568..43a96bb6 100644
--- a/src/test/javassist/proxyfactory/ProxyFactoryTest.java
+++ b/src/test/javassist/proxyfactory/ProxyFactoryTest.java
@@ -128,4 +128,16 @@ public class ProxyFactoryTest extends TestCase {
public static class TestDefaultC2 extends TestDefaultC {
public int baz() { return super.foo(); }
}
+
+ public void testJava11() throws Exception {
+ ProxyFactory factory = new ProxyFactory();
+ factory.setSuperclass(java.util.HashMap.class);
+ java.util.HashMap e = (java.util.HashMap)factory.create(null, null, new MethodHandler() {
+ @Override
+ public Object invoke(Object self, Method thisMethod,
+ Method proceed, Object[] args) throws Throwable {
+ return proceed.invoke(self, args);
+ }
+ });
+ }
}