Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/desktop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannah von Reth <hannah.vonreth@owncloud.com>2021-02-17 14:06:05 +0300
committerMatthieu Gallien (Rebase PR Action) <matthieu_gallien@yahoo.fr>2021-06-16 13:54:07 +0300
commit03182ea714be4c6fc5c4e16dd193d268e11cd1d0 (patch)
tree61222d061602f5821b1ab8b2569bd72c63953a9b /src/common
parentd014293f6d93a34ea021ce287030a1f575f403c3 (diff)
Use longWinPath in more places
Diffstat (limited to 'src/common')
-rw-r--r--src/common/filesystembase.cpp16
-rw-r--r--src/common/utility.cpp3
2 files changed, 7 insertions, 12 deletions
diff --git a/src/common/filesystembase.cpp b/src/common/filesystembase.cpp
index 8bbca4922..5eb9dbd29 100644
--- a/src/common/filesystembase.cpp
+++ b/src/common/filesystembase.cpp
@@ -205,14 +205,8 @@ bool FileSystem::uncheckedRenameReplace(const QString &originFileName,
(wchar_t *)dest.utf16(),
MOVEFILE_REPLACE_EXISTING + MOVEFILE_COPY_ALLOWED + MOVEFILE_WRITE_THROUGH);
if (!ok) {
- wchar_t *string = 0;
- FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
- nullptr, ::GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
- (LPWSTR)&string, 0, nullptr);
-
- *errorString = QString::fromWCharArray(string);
+ *errorString = Utility::formatWinError(GetLastError());
qCWarning(lcFileSystem) << "Renaming temp file to final failed: " << *errorString;
- LocalFree((HLOCAL)string);
return false;
}
#endif
@@ -449,13 +443,13 @@ bool FileSystem::moveToTrash(const QString &fileName, QString *errorString)
bool FileSystem::isFileLocked(const QString &fileName)
{
#ifdef Q_OS_WIN
- const wchar_t *wuri = reinterpret_cast<const wchar_t *>(fileName.utf16());
// Check if file exists
- DWORD attr = GetFileAttributesW(wuri);
+ const QString fName = longWinPath(fileName);
+ DWORD attr = GetFileAttributesW(reinterpret_cast<const wchar_t *>(fName.utf16()));
if (attr != INVALID_FILE_ATTRIBUTES) {
// Try to open the file with as much access as possible..
HANDLE win_h = CreateFileW(
- wuri,
+ reinterpret_cast<const wchar_t *>(fName.utf16()),
GENERIC_READ | GENERIC_WRITE,
FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
nullptr, OPEN_EXISTING,
@@ -493,7 +487,7 @@ bool FileSystem::isJunction(const QString &filename)
{
#ifdef Q_OS_WIN
WIN32_FIND_DATA findData;
- HANDLE hFind = FindFirstFileEx((const wchar_t *)filename.utf16(), FindExInfoBasic, &findData, FindExSearchNameMatch, nullptr, 0);
+ HANDLE hFind = FindFirstFileEx(reinterpret_cast<const wchar_t *>(longWinPath(filename).utf16()), FindExInfoBasic, &findData, FindExSearchNameMatch, nullptr, 0);
if (hFind != INVALID_HANDLE_VALUE) {
FindClose(hFind);
return false;
diff --git a/src/common/utility.cpp b/src/common/utility.cpp
index c9b0a81fd..e31534ca3 100644
--- a/src/common/utility.cpp
+++ b/src/common/utility.cpp
@@ -19,6 +19,7 @@
#include "config.h"
#include "common/utility.h"
+#include "common/filesystembase.h"
#include "version.h"
// Note: This file must compile without QtGui
@@ -229,7 +230,7 @@ qint64 Utility::freeDiskSpace(const QString &path)
#elif defined(Q_OS_WIN)
ULARGE_INTEGER freeBytes;
freeBytes.QuadPart = 0L;
- if (GetDiskFreeSpaceEx(reinterpret_cast<const wchar_t *>(path.utf16()), &freeBytes, nullptr, nullptr)) {
+ if (GetDiskFreeSpaceEx(reinterpret_cast<const wchar_t *>(FileSystem::longWinPath(path).utf16()), &freeBytes, nullptr, nullptr)) {
return freeBytes.QuadPart;
}
#endif