aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/io/natObjectInputStream.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/io/natObjectInputStream.cc')
-rw-r--r--libjava/java/io/natObjectInputStream.cc13
1 files changed, 8 insertions, 5 deletions
diff --git a/libjava/java/io/natObjectInputStream.cc b/libjava/java/io/natObjectInputStream.cc
index 0e0d5a719cc..2d1a55665d1 100644
--- a/libjava/java/io/natObjectInputStream.cc
+++ b/libjava/java/io/natObjectInputStream.cc
@@ -1,6 +1,6 @@
// natObjectInputStream.cc - Native part of ObjectInputStream class.
-/* Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001, 2005 Free Software Foundation
This ObjectInputStream is part of libgcj.
@@ -24,6 +24,7 @@ details. */
#include <java/lang/SecurityManager.h>
#include <java/lang/reflect/Constructor.h>
#include <java/lang/reflect/Method.h>
+#include <java-stack.h>
#ifdef DEBUG
#include <java/lang/System.h>
@@ -69,9 +70,11 @@ java::io::ObjectInputStream::allocateObject (jclass klass, jclass,
return obj;
}
-java::lang::ClassLoader*
-java::io::ObjectInputStream::currentClassLoader (::java::lang::SecurityManager *sm)
+java::lang::ClassLoader *
+java::io::ObjectInputStream::currentLoader ()
{
- return sm->currentClassLoader ();
+ jclass caller = _Jv_StackTrace::GetCallingClass (&ObjectInputStream::class$);
+ if (caller)
+ return caller->getClassLoaderInternal();
+ return NULL;
}
-