diff options
author | David Barksdale <amatus.amongus@gmail.com> | 2011-02-02 16:04:16 -0800 |
---|---|---|
committer | David Barksdale <amatus.amongus@gmail.com> | 2011-02-02 16:04:16 -0800 |
commit | 11a3c139a105f6113ca9f349f8170f8591212a6e (patch) | |
tree | a541ae375c8874f4358211764b4ecfdd13efd0be | |
parent | a158c0da1d43ddad9923e27e1fdd03e3bbbe5b37 (diff) |
The DynamicClassLoader should not use the default ProtectionDomain.1.2.x
I've decided that using the ProtectionDomain of the ClassLoader
which loaded the Compiler class is probably a good bet.
This is useful for signed Java applets because the default
ProtectionDomain will not have all the privlages of the applet.
-rw-r--r-- | src/jvm/clojure/lang/DynamicClassLoader.java | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/jvm/clojure/lang/DynamicClassLoader.java b/src/jvm/clojure/lang/DynamicClassLoader.java index 8719dc18..39ca6445 100644 --- a/src/jvm/clojure/lang/DynamicClassLoader.java +++ b/src/jvm/clojure/lang/DynamicClassLoader.java @@ -42,9 +42,9 @@ public DynamicClassLoader(ClassLoader parent){ public Class defineClass(String name, byte[] bytes, Object srcForm){ Util.clearCache(rq, classCache); - Class c = defineClass(name, bytes, 0, bytes.length); - classCache.put(name, new SoftReference(c,rq)); - return c; + Class c = defineClass(name, bytes, 0, bytes.length, Compiler.class.getProtectionDomain()); + classCache.put(name, new SoftReference(c,rq)); + return c; } protected Class<?> findClass(String name) throws ClassNotFoundException{ |