santiagopg 2003/12/04 12:59:37
Modified: java/src/org/apache/xalan/xsltc/trax TemplatesImpl.java
Log:
Creation of translet's class loader should be wrapped in a doPrivileged block
(java.lang.RuntimePermission createClassLoader).
Revision Changes Path
1.32 +11 -5
xml-xalan/java/src/org/apache/xalan/xsltc/trax/TemplatesImpl.java
Index: TemplatesImpl.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/trax/TemplatesImpl.java,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -r1.31 -r1.32
--- TemplatesImpl.java 24 Nov 2003 22:18:57 -0000 1.31
+++ TemplatesImpl.java 4 Dec 2003 20:59:37 -0000 1.32
@@ -70,6 +70,8 @@
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Properties;
+import java.security.AccessController;
+import java.security.PrivilegedAction;
import javax.xml.transform.Templates;
import javax.xml.transform.Transformer;
@@ -160,8 +162,8 @@
/**
* Access to final protected superclass member from outer class.
*/
- Class defineClass(byte[] b) {
- return defineClass(null, b, 0, b.length);
+ Class defineClass(final byte[] b) {
+ return defineClass(null, b, 0, b.length);
}
}
@@ -316,8 +318,12 @@
throw new TransformerConfigurationException(err.toString());
}
- TransletClassLoader loader =
- new TransletClassLoader(ObjectFactory.findClassLoader());
+ TransletClassLoader loader = (TransletClassLoader)
+ AccessController.doPrivileged(new PrivilegedAction() {
+ public Object run() {
+ return new
TransletClassLoader(ObjectFactory.findClassLoader());
+ }
+ });
try {
final int classCount = _bytecodes.length;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]