Browse Source

Optimization

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@274162 13f79535-47bb-0310-9956-ffa450edef68
master
Conor MacNeill 22 years ago
parent
commit
cfb1f629ca
1 changed files with 11 additions and 10 deletions
  1. +11
    -10
      src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java

+ 11
- 10
src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java View File

@@ -642,28 +642,29 @@ public class FTP
protected void createParents(FTPClient ftp, String filename)
throws IOException, BuildException {

String cwd = ftp.printWorkingDirectory();
File dir = new File(filename);
if (dirCache.contains(dir)) {
return;
}

Vector parents = new Vector();
File dir = new File(filename);
String dirname;

while ((dirname = dir.getParent()) != null) {
dir = new File(dirname);
File checkDir = new File(dirname);
if (dirCache.contains(checkDir)) {
break;
}
dir = checkDir;
parents.addElement(dir);
}

// find first non cached dir
int i = parents.size() - 1;
while (i >= 0) {
dir = (File) parents.elementAt(i);
if (!dirCache.contains(dir)) {
break;
}
i--;
}
if (i >= 0) {
String cwd = ftp.printWorkingDirectory();
String parent = dir.getParent();
if (parent != null) {
if (!ftp.changeWorkingDirectory(parent)) {


Loading…
Cancel
Save