ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject [Bug 54300] New: more efficient (and shorter) method call in ComponentHelper.printUnknownDefinition
Date Fri, 14 Dec 2012 20:53:48 GMT
https://issues.apache.org/bugzilla/show_bug.cgi?id=54300

            Bug ID: 54300
           Summary: more efficient (and shorter) method call in
                    ComponentHelper.printUnknownDefinition
           Product: Ant
           Version: 1.8.3
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Core
          Assignee: notifications@ant.apache.org
          Reporter: nistor1@illinois.edu
    Classification: Unclassified

Created attachment 29761
  --> https://issues.apache.org/bugzilla/attachment.cgi?id=29761&action=edit
patch

The problem appears in version 1.8.4 and in revision 1421898.  I
attached a one-line patch that fixes it.

In method "ComponentHelper.printUnknownDefinition", the call
"componentName.indexOf(MagicNames.ANTLIB_PREFIX) == 0" should be
"componentName.startsWith(MagicNames.ANTLIB_PREFIX)".  The intent of
the call is more explicit with "startsWith" than with "indexOf(..)==0".  
"startsWith" is also more efficient than "indexOf", because
"startsWith" tries to match only the start of the string, while
"indexOf" searches until the first occurrence.

There are many calls to "String.startsWith" in Ant (just like in the
proposed patch), for example, in methods "AntlibDefinition.setURI",
"AntClassLoader.isParentFirst", "ComponentHelper.checkNamespace",
"Execute.getVMSLogicals", "ExecTask.isPath", "Jar.writeIndexLikeList",
"Definer.makeResourceFromURI", "PathTokenizer.nextToken", etc.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Mime
View raw message