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]

Reply via email to