From 88f44e923b45ad9b16c3116aa1aa9610ae651ac6 Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Fri, 28 Nov 2003 09:28:49 +0000 Subject: [PATCH] Under some circumstances scp would miss responses from the remote side leading to corrupted files. PR: 24449 Submitted by: Atsuhiko Yamanaka git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@275710 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/tools/ant/taskdefs/optional/ssh/ScpToMessage.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessage.java b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessage.java index fe1b13638..ccfb826c7 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessage.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpToMessage.java @@ -113,7 +113,6 @@ public class ScpToMessage extends AbstractSshMessage { waitForAck(in); sendFileToRemote(localFile, in, out); - waitForAck(in); } finally { if (channel != null) { channel.disconnect(); @@ -134,7 +133,6 @@ public class ScpToMessage extends AbstractSshMessage { Directory current = (Directory) i.next(); sendDirectory(current, in, out); } - waitForAck(in); } finally { if (channel != null) { channel.disconnect(); @@ -167,6 +165,7 @@ public class ScpToMessage extends AbstractSshMessage { waitForAck(in); sendDirectory(directory, in, out); out.write("E\n".getBytes()); + waitForAck(in); } private void sendFileToRemote(File localFile, @@ -200,6 +199,7 @@ public class ScpToMessage extends AbstractSshMessage { } out.flush(); sendAck(out); + waitForAck(in); } finally { long endTime = System.currentTimeMillis(); logStats(startTime, endTime, totalLength);