You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by mm...@locus.apache.org on 2000/08/07 23:45:35 UTC

cvs commit: xml-xalan/java/src/org/apache/xalan/templates ElemNumber.java

mmidy       00/08/07 14:45:35

  Modified:    java/src/org/apache/xalan/templates ElemNumber.java
  Log:
  Initialize character array if necessary
  
  Revision  Changes    Path
  1.3       +20 -8     xml-xalan/java/src/org/apache/xalan/templates/ElemNumber.java
  
  Index: ElemNumber.java
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/templates/ElemNumber.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ElemNumber.java	2000/07/05 14:40:12	1.2
  +++ ElemNumber.java	2000/08/07 21:45:35	1.3
  @@ -450,7 +450,7 @@
       throws SAXException
     {
       if(TransformerImpl.S_DEBUG)
  -      transformer.getTraceManager().fireTraceEvent(sourceNode, mode, this);
  +      transformer.getTraceManager().fireTraceEvent(sourceNode, mode, this);    
   
       String countString = getCountString(transformer, sourceNode);
   
  @@ -1023,16 +1023,28 @@
                                                                                   contextNode, this,
                                                                                   new StringBuffer()) : null;
       switch(numberType)
  -    {
  +    {     
       case 'A':
  +      if (m_alphaCountTable == null)
  +      {  
  +        thisBundle = (XSLTResourceBundle)XSLTResourceBundle.loadResourceBundle( Constants.LANG_BUNDLE_NAME, getLocale(transformer, contextNode) );       
  +        char[] alphabet;
  +        alphabet= (char[]) thisBundle.getObject(Constants.LANG_ALPHABET);
  +        m_alphaCountTable = alphabet;
  +      }    
         int2alphaCount(listElement, m_alphaCountTable, formattedNumber);
         break;
  -    case 'a':
  -      {
  -        StringBuffer stringBuf = new StringBuffer();
  -        int2alphaCount(listElement, m_alphaCountTable, stringBuf);
  -        formattedNumber.append(stringBuf.toString().toLowerCase(getLocale(transformer, contextNode)));
  -      }
  +    case 'a':      
  +      if (m_alphaCountTable == null)
  +      {  
  +        thisBundle = (XSLTResourceBundle)XSLTResourceBundle.loadResourceBundle( Constants.LANG_BUNDLE_NAME, getLocale(transformer, contextNode) );       
  +        char[] alphabet;
  +        alphabet= (char[]) thisBundle.getObject(Constants.LANG_ALPHABET);
  +        m_alphaCountTable = alphabet;
  +      }
  +      StringBuffer stringBuf = new StringBuffer();
  +      int2alphaCount(listElement, m_alphaCountTable, stringBuf);
  +      formattedNumber.append(stringBuf.toString().toLowerCase(getLocale(transformer, contextNode)));      
         break;
       case 'I':
         formattedNumber.append( long2roman(listElement, true));