diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-03-12 23:02:57 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-03-12 23:02:57 +0300 |
commit | 9e53440cb2dbcfd4311ce2566eb98839383738c7 (patch) | |
tree | 364f14988d0e0aac5ee33ed56676886a52209714 /src/net | |
parent | 6bde574ad29e04b0a355cea2915e4e48bd1d56f4 (diff) | |
download | mv-9e53440cb2dbcfd4311ce2566eb98839383738c7.tar.gz mv-9e53440cb2dbcfd4311ce2566eb98839383738c7.tar.bz2 mv-9e53440cb2dbcfd4311ce2566eb98839383738c7.tar.xz mv-9e53440cb2dbcfd4311ce2566eb98839383738c7.zip |
Fix servers list download error.
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/download.cpp | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/net/download.cpp b/src/net/download.cpp index d20713dfa..bc8ea4f72 100644 --- a/src/net/download.cpp +++ b/src/net/download.cpp @@ -306,16 +306,19 @@ int Download::downloadThread(void *ptr) // Any existing file with this name is deleted first, otherwise // the rename will fail on Windows. - ::remove(d->mFileName.c_str()); - ::rename(outFilename.c_str(), d->mFileName.c_str()); - - // Check if we can open it and no errors were encountered - // during renaming - file = fopen(d->mFileName.c_str(), "rb"); - if (file) + if (!d->mOptions.cancel) { - fclose(file); - complete = true; + ::remove(d->mFileName.c_str()); + ::rename(outFilename.c_str(), d->mFileName.c_str()); + + // Check if we can open it and no errors were encountered + // during renaming + file = fopen(d->mFileName.c_str(), "rb"); + if (file) + { + fclose(file); + complete = true; + } } } else |