mmidy       99/12/02 17:37:16

  Modified:    src/org/apache/xalan/xpath/res XPATHErrorResources.java
                        XPATHErrorResources_en.java
               src/org/apache/xalan/xpath/xml XMLParserLiaisonDefault.java
  Log:
  catch illegal use of disable-output-escaping
  
  Revision  Changes    Path
  1.5       +3 -1      
xml-xalan/src/org/apache/xalan/xpath/res/XPATHErrorResources.java
  
  Index: XPATHErrorResources.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/src/org/apache/xalan/xpath/res/XPATHErrorResources.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- XPATHErrorResources.java  1999/11/16 22:40:39     1.4
  +++ XPATHErrorResources.java  1999/12/03 01:37:16     1.5
  @@ -176,7 +176,8 @@
   WARNING0010 = 10,
   WARNING0011 = 11,
   WARNING0012 = 12,
  -MAX_WARNING = 12;
  +WARNING0013 = 13,  
  +MAX_WARNING = 13;
   
   
   
  @@ -247,6 +248,7 @@
   {"WR0010", "Can not make URL from: {0}"},
   {"WR0011", "Can not load requested doc: {0}"},
   {"WR0012", "No declaration found for decimal format: {0}"},
  +{"WR0013", "Illegal use of disable-output-escaping attribute: ignored"},
   
   
   {"BAD_CODE", "Parameter to createMessage was out of bounds"},
  
  
  
  1.5       +1 -0      
xml-xalan/src/org/apache/xalan/xpath/res/XPATHErrorResources_en.java
  
  Index: XPATHErrorResources_en.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/src/org/apache/xalan/xpath/res/XPATHErrorResources_en.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- XPATHErrorResources_en.java       1999/11/16 22:40:41     1.4
  +++ XPATHErrorResources_en.java       1999/12/03 01:37:16     1.5
  @@ -76,6 +76,7 @@
   {"WR0010", "Can not make URL from: {0}"},
   {"WR0011", "Can not load requested doc: {0}"},
   {"WR0012", "No declaration found for decimal format: {0}"},
  +{"WR0013", "Illegal use of disable-output-escaping attribute : ignored"},
   
   
   {"BAD_CODE", "Parameter to createMessage was out of bounds"},
  
  
  
  1.9       +34 -1     
xml-xalan/src/org/apache/xalan/xpath/xml/XMLParserLiaisonDefault.java
  
  Index: XMLParserLiaisonDefault.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/src/org/apache/xalan/xpath/xml/XMLParserLiaisonDefault.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- XMLParserLiaisonDefault.java      1999/11/28 10:26:21     1.8
  +++ XMLParserLiaisonDefault.java      1999/12/03 01:37:16     1.9
  @@ -80,13 +80,16 @@
      * The problem listener for handling problem reports.
      */
     private ProblemListener m_problemListener = null;
  +  private static ProblemListener m_problemListenerStatic;
     
  +  
     /**
      * Set the current problem listener.
      */
     public void setProblemListener(ProblemListener listener)
     {
       m_problemListener = listener;
  +    m_problemListenerStatic = m_problemListener;
     }
   
     /**
  @@ -105,6 +108,7 @@
       m_problemListener = problemListener;
       if(null == m_problemListener)
         m_problemListener = new ProblemListenerDefault();
  +    m_problemListenerStatic = m_problemListener;
     }
   
     /**
  @@ -113,6 +117,7 @@
     public XMLParserLiaisonDefault()
     {
       m_problemListener = new ProblemListenerDefault();
  +    m_problemListenerStatic = m_problemListener;
     }
   
     /**
  @@ -1360,6 +1365,17 @@
       switch(node.getNodeType())
       {
       case Node.DOCUMENT_FRAGMENT_NODE:
  +      NodeList mnl = node.getChildNodes();
  +      int n = mnl.getLength();
  +      for(int i = 0; i < n; i++)
  +      {
  +        String nodeData = getNodeData(mnl.item(i));
  +        if((null != nodeData) && (nodeData.length() > 0))
  +        {
  +          data = (null == data) ? nodeData : (data + nodeData);
  +        }
  +      }
  +      break;
       case Node.DOCUMENT_NODE:
       case Node.ELEMENT_NODE:
         for(Node child = node.getFirstChild();
  @@ -1371,7 +1387,8 @@
           {
             data = (null == data) ? nodeData : (data + nodeData);
           }
  -      }
  +      }              
  +      
         break;
       case Node.TEXT_NODE:
       case Node.CDATA_SECTION_NODE:
  @@ -1384,6 +1401,9 @@
       case Node.ATTRIBUTE_NODE:
         data = node.getNodeValue();
         break;
  +    case Node.PROCESSING_INSTRUCTION_NODE:      
  +      warning(XPATHErrorResources.WARNING0013);        
  +      break;
       default:
         // ignore
         break;
  @@ -1516,6 +1536,19 @@
       {
         return true;
       }
  +  }
  +  
  +  /**
  +   * Warn the user of an problem.
  +   */
  +  public static void warning(int msg)
  +  {
  +    String fmsg = XSLMessages.createXPATHWarning(msg, null);
  +    m_problemListenerStatic.problem(XPathSupport.XPATHPROCESSOR, 
  +                                              XPathSupport.WARNING,
  +                                              null, 
  +                                              null, fmsg, null, 0, 0);
  +     
     }
     
     /**
  
  
  

Reply via email to