From 112e93b1beca44ba602916c5ac8aa4ff008eac49 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Tue, 2 Jul 2024 14:34:06 +0200 Subject: [PATCH] RemoteLinux: Allow transferring directories Fixes: QTCREATORBUG-31136 Change-Id: Ic9e5d57ba5f5e85efe5db58719f38f0702ac3492 Reviewed-by: Christian Stenger --- src/plugins/remotelinux/linuxdevice.cpp | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/plugins/remotelinux/linuxdevice.cpp b/src/plugins/remotelinux/linuxdevice.cpp index 3fd4f0db738..c4b21a1f413 100644 --- a/src/plugins/remotelinux/linuxdevice.cpp +++ b/src/plugins/remotelinux/linuxdevice.cpp @@ -1337,7 +1337,7 @@ static FilePaths dirsToCreate(const FilesToTransfer &files) static QByteArray transferCommand(bool link) { - return link ? "ln -s" : "put"; + return link ? "ln -s" : "put -R"; } class SshTransferInterface : public FileTransferInterface @@ -1558,7 +1558,7 @@ private: const auto batchIt = m_batches.begin(); for (auto filesIt = batchIt->cbegin(); filesIt != batchIt->cend(); ++filesIt) { const FileToTransfer fixedFile = fixLocalFileOnWindows(*filesIt, options); - options << fixedLocalPath(fixedFile.m_source); + options << fixedFile.m_source.path(); } options << fixedRemotePath(batchIt.key(), userAtHost()); m_batches.erase(batchIt); @@ -1588,11 +1588,6 @@ private: return fixedFile; } - QString fixedLocalPath(const FilePath &file) const - { - return file.isDir() && file.path().back() != '/' ? file.path() + '/' : file.path(); - } - QString fixedRemotePath(const FilePath &file, const QString &remoteHost) const { return remoteHost + ':' + file.path();