diff options
Diffstat (limited to 'java/lang/Package.java')
| -rw-r--r-- | java/lang/Package.java | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/java/lang/Package.java b/java/lang/Package.java index 89945cadd..23838d681 100644 --- a/java/lang/Package.java +++ b/java/lang/Package.java @@ -37,6 +37,8 @@ exception statement from your version. */ package java.lang; +import gnu.classpath.VMStackWalker; + import java.net.URL; import java.util.NoSuchElementException; import java.util.StringTokenizer; @@ -273,7 +275,7 @@ public class Package public static Package getPackage(String name) { // Get the caller's classloader - ClassLoader cl = VMSecurityManager.currentClassLoader(); + ClassLoader cl = VMStackWalker.getCallingClassLoader(); return cl != null ? cl.getPackage(name) : null; } @@ -286,8 +288,7 @@ public class Package public static Package[] getPackages() { // Get the caller's classloader - Class c = VMSecurityManager.getClassContext()[1]; - ClassLoader cl = c.getClassLoader(); + ClassLoader cl = VMStackWalker.getCallingClassLoader(); // Sun's implementation returns the packages loaded by the bootstrap // classloader if cl is null, but right now our bootstrap classloader // does not create any Packages. |
