summaryrefslogtreecommitdiffstats
path: root/src/network/access
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@nokia.com>2011-01-14 19:15:37 (GMT)
committerThiago Macieira <thiago.macieira@nokia.com>2011-01-26 13:15:15 (GMT)
commit7012b6697df8472df5d772394edb0fbf7219da42 (patch)
treec0acef3ac95bc5fd032b0a1a6ffc4da041fc1f44 /src/network/access
parentdb3d9b67ac543ddfdac649bec2c1287982d50a4e (diff)
downloadQt-7012b6697df8472df5d772394edb0fbf7219da42.zip
Qt-7012b6697df8472df5d772394edb0fbf7219da42.tar.gz
Qt-7012b6697df8472df5d772394edb0fbf7219da42.tar.bz2
QNAM FTP: switch to binary mode before sending a SIZE command
With some servers, SIZE is not allowed in ASCII mode or it may return different sizes. Since we transfer in binary anyway, better get the size in binary too. Reviewed-by: Peter Hartmann
Diffstat (limited to 'src/network/access')
-rw-r--r--src/network/access/qnetworkaccessftpbackend.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/network/access/qnetworkaccessftpbackend.cpp b/src/network/access/qnetworkaccessftpbackend.cpp
index 42d2955..b0303aa 100644
--- a/src/network/access/qnetworkaccessftpbackend.cpp
+++ b/src/network/access/qnetworkaccessftpbackend.cpp
@@ -307,8 +307,10 @@ void QNetworkAccessFtpBackend::ftpDone()
// logged in successfully, send the stat requests (if supported)
QString command = url().path();
command.prepend(QLatin1String("%1 "));
- if (supportsSize)
+ if (supportsSize) {
+ ftp->rawCommand(QLatin1String("TYPE I"));
sizeId = ftp->rawCommand(command.arg(QLatin1String("SIZE"))); // get size
+ }
if (supportsMdtm)
mdtmId = ftp->rawCommand(command.arg(QLatin1String("MDTM"))); // get modified time
if (!supportsSize && !supportsMdtm)