From a5c5a0ac97c05bad179e4e336c46b3471dd4525c Mon Sep 17 00:00:00 2001 From: Stefan Ring Date: Fri, 3 Dec 2010 08:03:41 +0100 Subject: [PATCH] PR152 * src/classes/gnuclasspath/java/security/VMAccessController.java: Ensure use of setPolicy is reflected by the default SecurityManager. Patch taken from classpath CVS. --- .../gnuclasspath/java/security/VMAccessController.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/classes/gnuclasspath/java/security/VMAccessController.java b/src/classes/gnuclasspath/java/security/VMAccessController.java index 160df10cb..174a0df2b 100644 --- a/src/classes/gnuclasspath/java/security/VMAccessController.java +++ b/src/classes/gnuclasspath/java/security/VMAccessController.java @@ -71,7 +71,7 @@ final class VMAccessController Permissions permissions = new Permissions(); permissions.add(new AllPermission()); ProtectionDomain[] domain = new ProtectionDomain[] { - new ProtectionDomain(source, permissions) + new ProtectionDomain(source, permissions, null, null) }; DEFAULT_CONTEXT = new AccessControlContext(domain); } @@ -188,12 +188,13 @@ final class VMAccessController { Class clazz = classes[i]; String method = methods[i]; + ClassLoader loader = clazz.getClassLoader(); if (DEBUG) { debug("checking " + clazz + "." + method); // subject to getClassLoader RuntimePermission - debug("loader = " + clazz.getClassLoader()); + debug("loader = " + loader); } // If the previous frame was a call to doPrivileged, then this is @@ -225,7 +226,8 @@ final class VMAccessController // Create a static snapshot of this domain, which may change over time // if the current policy changes. domains.add(new ProtectionDomain(domain.getCodeSource(), - domain.getPermissions())); + domain.getPermissions(), + loader, null)); } if (DEBUG) -- 2.25.1