diff options
author | Jung-uk Kim <jkim@FreeBSD.org> | 2013-04-25 20:03:56 +0000 |
---|---|---|
committer | Jung-uk Kim <jkim@FreeBSD.org> | 2013-04-25 20:03:56 +0000 |
commit | 70c842246a7ffdd808630db4af137711eaa33346 (patch) | |
tree | faaadf11511ea057e94e662bbf56a70751cbbbec /java/openjdk6/files/icedtea/security/20130416/8009305.patch | |
parent | - Update to 2.0.6 . (diff) |
Add multiple security patches from IcedTea6 1.12.5.
http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-April/022985.html
Obtained from: IcedTea Project
Diffstat (limited to 'java/openjdk6/files/icedtea/security/20130416/8009305.patch')
-rw-r--r-- | java/openjdk6/files/icedtea/security/20130416/8009305.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/java/openjdk6/files/icedtea/security/20130416/8009305.patch b/java/openjdk6/files/icedtea/security/20130416/8009305.patch new file mode 100644 index 000000000000..d469d5748708 --- /dev/null +++ b/java/openjdk6/files/icedtea/security/20130416/8009305.patch @@ -0,0 +1,68 @@ +# HG changeset patch +# User dfuchs +# Date 1363278452 -3600 +# Node ID 31c782610044b0f04f981c2b97355804a1c57407 +# Parent 87bacc5ee8e430aadd200ae13a2d15fe9c8f4350 +8009305: Improve AWT data transfer +Reviewed-by: art, skoivu, smarks, ant + +diff --git openjdk/jdk/src/share/classes/sun/awt/datatransfer/TransferableProxy.java openjdk/jdk/src/share/classes/sun/awt/datatransfer/TransferableProxy.java +--- jdk/src/share/classes/sun/awt/datatransfer/TransferableProxy.java ++++ jdk/src/share/classes/sun/awt/datatransfer/TransferableProxy.java +@@ -102,11 +102,11 @@ public class TransferableProxy implement + protected final boolean isLocal; + } + +-class ClassLoaderObjectOutputStream extends ObjectOutputStream { ++final class ClassLoaderObjectOutputStream extends ObjectOutputStream { + private final Map<Set<String>, ClassLoader> map = + new HashMap<Set<String>, ClassLoader>(); + +- public ClassLoaderObjectOutputStream(OutputStream os) throws IOException { ++ ClassLoaderObjectOutputStream(OutputStream os) throws IOException { + super(os); + } + +@@ -140,15 +140,15 @@ class ClassLoaderObjectOutputStream exte + map.put(s, classLoader); + } + +- public Map<Set<String>, ClassLoader> getClassLoaderMap() { ++ Map<Set<String>, ClassLoader> getClassLoaderMap() { + return new HashMap(map); + } + } + +-class ClassLoaderObjectInputStream extends ObjectInputStream { ++final class ClassLoaderObjectInputStream extends ObjectInputStream { + private final Map<Set<String>, ClassLoader> map; + +- public ClassLoaderObjectInputStream(InputStream is, ++ ClassLoaderObjectInputStream(InputStream is, + Map<Set<String>, ClassLoader> map) + throws IOException { + super(is); +@@ -166,8 +166,11 @@ class ClassLoaderObjectInputStream exten + s.add(className); + + ClassLoader classLoader = map.get(s); +- +- return Class.forName(className, false, classLoader); ++ if (classLoader != null) { ++ return Class.forName(className, false, classLoader); ++ } else { ++ return super.resolveClass(classDesc); ++ } + } + + protected Class<?> resolveProxyClass(String[] interfaces) +@@ -179,6 +182,9 @@ class ClassLoaderObjectInputStream exten + } + + ClassLoader classLoader = map.get(s); ++ if (classLoader == null) { ++ return super.resolveProxyClass(interfaces); ++ } + + // The code below is mostly copied from the superclass. + ClassLoader nonPublicLoader = null; |