https://issues.apache.org/bugzilla/show_bug.cgi?id=54301
Bug ID: 54301
Summary: more efficient (and shorter) method call in
FTP.FTPDirectoryScanner.AntFTPFile.getFastRelativePath
Product: Ant
Version: 1.8.4
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Core
Assignee: [email protected]
Reporter: [email protected]
Classification: Unclassified
Created attachment 29762
--> https://issues.apache.org/bugzilla/attachment.cgi?id=29762&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 "FTP.FTPDirectoryScanner.AntFTPFile.getFastRelativePath",
the call "absPath.indexOf(rootPath + remoteFileSep) == 0" should be
"absPath.startsWith(rootPath + remoteFileSep)". 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.