diff --git a/src/etc/testcases/taskdefs/optional/net/ftp.xml b/src/etc/testcases/taskdefs/optional/net/ftp.xml
index 9219db1f0..a4806bc3f 100644
--- a/src/etc/testcases/taskdefs/optional/net/ftp.xml
+++ b/src/etc/testcases/taskdefs/optional/net/ftp.xml
@@ -4,9 +4,9 @@
+
-
@@ -34,6 +34,7 @@
server="${ftp.host}"
userid="${ftp.user}"
password="${ftp.password}"
+ separator="${ftp.filesep}"
remotedir="${tmp.dir}">
@@ -57,6 +58,7 @@
server="${ftp.host}"
userid="${ftp.user}"
password="${ftp.password}"
+ separator="${ftp.filesep}"
remotedir="${tmp.dir}"
>
@@ -67,6 +69,7 @@
server="${ftp.host}"
userid="${ftp.user}"
password="${ftp.password}"
+ separator="${ftp.filesep}"
remotedir="${tmp.dir}"
>
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java
index 08c8cce7c..2b79484f3 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/net/FTP.java
@@ -273,7 +273,7 @@ public class FTP
// construct it
if (newroots.containsKey("")) {
// we are going to scan everything anyway
- scandir(remotedir, "", true);
+ scandir(rootPath, "", true);
} else {
// only scan directories that can include matched files or
// directories
diff --git a/src/testcases/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java b/src/testcases/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java
index 6dd7509a0..4f77474a2 100644
--- a/src/testcases/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java
+++ b/src/testcases/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java
@@ -113,6 +113,11 @@ public class FTPTest extends BuildFileTest{
}
public void tearDown() {
+ try {
+ ftp.disconnect();
+ } catch (IOException ioe) {
+ // do nothing
+ }
getProject().executeTarget("cleanup");
}
private boolean changeRemoteDir(String remoteDir) {