bodewig 2004/06/14 05:05:03
Modified: . Tag: ANT_16_BRANCH WHATSNEW
src/main/org/apache/tools/ant/taskdefs/optional/ssh Tag:
ANT_16_BRANCH ScpFromMessage.java
Log:
merge
Revision Changes Path
No revision
No revision
1.503.2.105 +3 -0 ant/WHATSNEW
Index: WHATSNEW
===================================================================
RCS file: /home/cvs/ant/WHATSNEW,v
retrieving revision 1.503.2.104
retrieving revision 1.503.2.105
diff -u -r1.503.2.104 -r1.503.2.105
--- WHATSNEW 12 Jun 2004 16:54:34 -0000 1.503.2.104
+++ WHATSNEW 14 Jun 2004 12:05:02 -0000 1.503.2.105
@@ -110,6 +110,9 @@
* <zip whenempty="skip"> didn't work in a common situation. Bugzilla
Report 22865.
+* <scp> now properly handles remote files and directories with spaces
+ in their names. Bugzilla Report 26097.
+
Other changes:
--------------
* doc fix concerning the dependencies of the ftp task
No revision
No revision
1.4.2.5 +12 -9
ant/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessage.java
Index: ScpFromMessage.java
===================================================================
RCS file:
/home/cvs/ant/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessage.java,v
retrieving revision 1.4.2.4
retrieving revision 1.4.2.5
diff -u -r1.4.2.4 -r1.4.2.5
--- ScpFromMessage.java 13 Apr 2004 11:26:13 -0000 1.4.2.4
+++ ScpFromMessage.java 14 Jun 2004 12:05:03 -0000 1.4.2.5
@@ -122,14 +122,14 @@
private File parseAndCreateDirectory(String serverResponse,
File localFile) {
- StringTokenizer token = new StringTokenizer(serverResponse);
- String command = token.nextToken();
- token.nextToken(); // appears that this is not used and it's zero.
- String directoryName = token.nextToken();
+ int start = serverResponse.indexOf(" ");
+ // appears that the next token is not used and it's zero.
+ start = serverResponse.indexOf(" ", start + 1);
+ String directoryName = serverResponse.substring(start + 1);
if (localFile.isDirectory()) {
File dir = new File(localFile, directoryName);
dir.mkdir();
-
+ log("Creating: " + dir);
return dir;
}
return null;
@@ -139,10 +139,13 @@
File localFile,
OutputStream out,
InputStream in) throws IOException {
- StringTokenizer token = new StringTokenizer(serverResponse);
- String command = token.nextToken();
- int filesize = Integer.parseInt(token.nextToken());
- String filename = token.nextToken();
+ int start = 0;
+ int end = serverResponse.indexOf(" ", start + 1);
+ String command = serverResponse.substring(start, end);
+ start = end + 1;
+ end = serverResponse.indexOf(" ", start + 1);
+ int filesize = Integer.parseInt(serverResponse.substring(start,
end));
+ String filename = serverResponse.substring(end + 1);
log("Receiving: " + filename + " : " + filesize);
File transferFile = (localFile.isDirectory())
? new File(localFile, filename)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]