---
lib/Sys/VirtV2V/Transfer/SSH.pm | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/lib/Sys/VirtV2V/Transfer/SSH.pm b/lib/Sys/VirtV2V/Transfer/SSH.pm
index 3b08716..ac5a384 100644
--- a/lib/Sys/VirtV2V/Transfer/SSH.pm
+++ b/lib/Sys/VirtV2V/Transfer/SSH.pm
@@ -82,6 +82,7 @@ sub transfer
my $vol = $target->create_volume($name, $size);
$vol->open();
+ my $written = 0;
for (;;) {
my $buffer;
# Transfer in 8k chunks
@@ -93,10 +94,16 @@ sub transfer
last if ($in == 0);
$vol->write($buffer);
+ $written += length($buffer);
}
$vol->close();
+ die(user_message(__x("Didn't receive full volume. Received {received}
".
+ "of {total} bytes.",
+ received => $written,
+ total => $size))) unless ($written == $size);
+
waitpid($pid, 0) == $pid or die("error reaping child: $!");
# If the child returned an error, check for anything on its stderr
if ($? != 0) {
--
1.6.6.1