diff --git a/AutoTx/AutoTx.cs b/AutoTx/AutoTx.cs
index c166bc66731a375adf7ed4858a80c3184cef30ab..2b132a275cef111ef7875b7330c90344d867b0a2 100644
--- a/AutoTx/AutoTx.cs
+++ b/AutoTx/AutoTx.cs
@@ -634,14 +634,12 @@ namespace AutoTx
                 return;
             }
             try {
-                _status.CurrentTransferSrc = subdirs[0].FullName;
-                _status.CurrentTransferSize = GetDirectorySize(_status.CurrentTransferSrc);
+                StartTransfer(subdirs[0].FullName);
             }
             catch (Exception ex) {
                 writeLog("Error checking for data to be transferred: " + ex.Message);
                 throw;
             }
-            StartTransfer();
         }
 
         /// <summary>
@@ -706,7 +704,7 @@ namespace AutoTx
 
             writeLogDebug("Resuming transfer from '" + _status.CurrentTransferSrc +
                           "' to '" + ExpandCurrentTargetTmp() + "'");
-            StartTransfer();
+            StartTransfer(_status.CurrentTransferSrc);
         }
 
         #endregion
diff --git a/AutoTx/RoboCommand.cs b/AutoTx/RoboCommand.cs
index cbce8861cb9ec86c2dc853d989407e0ef49b976f..f80bb216bd7afc1a607ec0436dafb35b6f18d368 100644
--- a/AutoTx/RoboCommand.cs
+++ b/AutoTx/RoboCommand.cs
@@ -16,12 +16,14 @@ namespace AutoTx
         /// false. The currently processed path is stored in the global status
         /// variable CurrentTransferSrc.
         /// </summary>
-        private void StartTransfer() {
+        private void StartTransfer(string sourcePath) {
             // only proceed when in a valid state:
             if (_transferState != TxState.Stopped)
                 return;
 
-            var sourcePath = _status.CurrentTransferSrc;
+            _status.CurrentTransferSrc = sourcePath;
+            _status.CurrentTransferSize = GetDirectorySize(sourcePath);
+
             // the user name is expected to be the last part of the path:
             _status.CurrentTargetTmp = new DirectoryInfo(sourcePath).Name;
             CreateNewDirectory(ExpandCurrentTargetTmp(), false);