sboag       00/08/06 20:01:23

  Modified:    java/src/org/apache/xalan/extensions MethodResolver.java
  Log:
  Check for zero args.
  
  Revision  Changes    Path
  1.7       +5 -4      
xml-xalan/java/src/org/apache/xalan/extensions/MethodResolver.java
  
  Index: MethodResolver.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/java/src/org/apache/xalan/extensions/MethodResolver.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- MethodResolver.java       2000/08/01 04:46:08     1.6
  +++ MethodResolver.java       2000/08/07 03:01:23     1.7
  @@ -138,7 +138,8 @@
           // System.out.println("numberMethodParams: "+numberMethodParams);
           // System.out.println("argsIn.length: "+argsIn.length);
           // System.out.println("exprContext: "+exprContext);
  -        if(numberMethodParams == (argsIn.length+1))
  +        int argsLen = (null != argsIn) ? argsIn.length : 0;
  +        if(numberMethodParams == (argsLen+1))
           {
             Class javaClass = paramTypes[0];
             
if(javaClass.isAssignableFrom(org.w3c.xslt.ExpressionContext.class))
  @@ -155,7 +156,7 @@
           else
               scoreStart = 100;
           
  -        if(argsIn.length == (numberMethodParams - paramStart))
  +        if(argsLen == (numberMethodParams - paramStart))
           {
             // then we have our candidate.
             int score = scoreMatch(paramTypes, paramStart, argsIn, scoreStart);
  @@ -197,7 +198,7 @@
       throws org.xml.sax.SAXException
     {
       // System.out.println("In convertParams");
  -    int nMethods = argsIn.length;
  +    int nMethods = (null != argsIn) ? argsIn.length : 0;
       int paramIndex = 0;
       if((paramTypes.length > 0) 
          && 
paramTypes[0].isAssignableFrom(org.w3c.xslt.ExpressionContext.class))
  @@ -371,7 +372,7 @@
     public static int scoreMatch(Class[] javeParamTypes, int paramTypesStart,
                                  Object[] xsltArgs, int score)
     {
  -    int nParams = xsltArgs.length;
  +    int nParams = (null != xsltArgs) ? xsltArgs.length : 0;
       for(int i = 0, paramTypesIndex = paramTypesStart; 
           i < nParams; 
           i++, paramTypesIndex++)
  
  
  

Reply via email to