diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-06-01 19:58:25 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-06-01 19:58:25 +0000 |
commit | 5c3bdf2ff4ad050d842ad73ffd0a679170cb0d62 (patch) | |
tree | 12419b4dbd84dc19200216a422ba5bca825d6f32 /libjava/java/io/ObjectInputStream.java | |
parent | ebcbc3356a31213c614cd9067a88d7b42eebe9ec (diff) | |
download | ppe42-gcc-5c3bdf2ff4ad050d842ad73ffd0a679170cb0d62.tar.gz ppe42-gcc-5c3bdf2ff4ad050d842ad73ffd0a679170cb0d62.zip |
PR libgcj/21785:
* java/io/natObjectInputStream.cc (currentClassLoader): Removed.
(currentLoader): New method.
* java/io/ObjectInputStream.java (resolveProxyClass): Use
currentLoader.
(currentLoader): Now native.
(currentClassLoader): Removed.
* testsuite/libjava.lang/pr21785.java: New file.
* testsuite/libjava.lang/pr21785.out: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100462 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/io/ObjectInputStream.java')
-rw-r--r-- | libjava/java/io/ObjectInputStream.java | 34 |
1 files changed, 5 insertions, 29 deletions
diff --git a/libjava/java/io/ObjectInputStream.java b/libjava/java/io/ObjectInputStream.java index 2cfe4c99419..0a97486d1bb 100644 --- a/libjava/java/io/ObjectInputStream.java +++ b/libjava/java/io/ObjectInputStream.java @@ -783,21 +783,11 @@ public class ObjectInputStream extends InputStream } /** - * This method invokes the method currentClassLoader for the - * current security manager (or build an empty one if it is not - * present). - * - * @return The most recent non-system ClassLoader on the execution stack. - * @see java.lang.SecurityManager#currentClassLoader() + * Returns he most recent user defined ClassLoader on the execution stack + * or null of none is found. */ - private ClassLoader currentLoader() - { - SecurityManager sm = System.getSecurityManager(); - if (sm == null) - sm = new SecurityManager () {}; - - return currentClassLoader(sm); - } + // GCJ LOCAL: native method. + private native ClassLoader currentLoader(); /** * Lookup a class stored in the local hashtable. If it is not @@ -883,12 +873,7 @@ public class ObjectInputStream extends InputStream protected Class resolveProxyClass(String[] intfs) throws IOException, ClassNotFoundException { - SecurityManager sm = System.getSecurityManager(); - - if (sm == null) - sm = new SecurityManager() {}; - - ClassLoader cl = currentClassLoader(sm); + ClassLoader cl = currentLoader(); Class[] clss = new Class[intfs.length]; if(cl == null) @@ -1866,15 +1851,6 @@ public class ObjectInputStream extends InputStream } } - /** - * This native method is used to get access to the protected method - * of the same name in SecurityManger. - * - * @param sm SecurityManager instance which should be called. - * @return The current class loader in the calling stack. - */ - private static native ClassLoader currentClassLoader (SecurityManager sm); - private void callReadMethod (Method readObject, Class klass, Object obj) throws ClassNotFoundException, IOException { |