From e5a8980bb96ce4809da58d3ced2bd4725305368a Mon Sep 17 00:00:00 2001 From: Andrew Haley Date: Mon, 21 Mar 2005 14:50:14 +0000 Subject: natVMSecurityManager.cc (getClassContext): Add new arg: klass. 2005-03-17 Andrew Haley * java/lang/natVMSecurityManager.cc (getClassContext): Add new arg: klass. Pass klass to _Jv_StackTrace::GetClassContext(). * java/lang/ClassLoader.java (getParent): Pass class to VMSecurityManager.getClassContext() (getSystemClassLoader): Likewise. * java/lang/Package.java (getPackage): Likewise. (getPackages): Likewise. * java/lang/SecurityManager.java (getClassContext): Likewise. (currentClassLoader): Likewise. * java/lang/VMSecurityManager.java: (getClassContext): Likewise. (currentClassLoader) Add new arg: caller. Pass caller to VMSecurityManager.getClassContext. * stacktrace.cc (GetClassContext): Correct calculation of jframe_count. * boehm.cc (_Jv_MarkObj): (_Jv_MarkObj): Mark im->source_file_name. From-SVN: r96803 --- libjava/java/lang/VMSecurityManager.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'libjava/java/lang/VMSecurityManager.java') diff --git a/libjava/java/lang/VMSecurityManager.java b/libjava/java/lang/VMSecurityManager.java index 604f8ecb428..f995ec89cf4 100644 --- a/libjava/java/lang/VMSecurityManager.java +++ b/libjava/java/lang/VMSecurityManager.java @@ -43,19 +43,19 @@ class VMSecurityManager ** @return an array containing all the methods on classes ** on the Java execution stack. **/ - static native Class[] getClassContext(); + static native Class[] getClassContext(Class caller); /** Get the current ClassLoader--the one nearest to the ** top of the stack. ** @return the current ClassLoader. **/ - static ClassLoader currentClassLoader() + static ClassLoader currentClassLoader(Class caller) { // The docs above are wrong. See the online docs. // FIXME this implementation is a bit wrong too -- the docs say we // must also consider ancestors of the system class loader. ClassLoader systemClassLoader = VMClassLoader.getSystemClassLoader(); - Class[] classStack = getClassContext (); + Class[] classStack = getClassContext (caller); for (int i = 0; i < classStack.length; i++) { ClassLoader loader = classStack[i].getClassLoader(); -- cgit v1.2.3