mirror of
https://github.com/nextcloud/desktop.git
synced 2024-11-21 20:45:51 +03:00
Merge pull request #7079 from nextcloud/bugfix/handleExceptionsFromFileSystemOps
add missing exception handling
This commit is contained in:
commit
2a987e9068
1 changed files with 9 additions and 5 deletions
|
@ -484,11 +484,15 @@ bool FileSystem::isFolderReadOnly(const std::filesystem::path &path) noexcept
|
|||
FileSystem::FilePermissionsRestore::FilePermissionsRestore(const QString &path, FolderPermissions temporaryPermissions)
|
||||
: _path(path)
|
||||
{
|
||||
const auto stdStrPath = _path.toStdWString();
|
||||
_initialPermissions = FileSystem::isFolderReadOnly(stdStrPath) ? OCC::FileSystem::FolderPermissions::ReadOnly : OCC::FileSystem::FolderPermissions::ReadWrite;
|
||||
if (_initialPermissions != temporaryPermissions) {
|
||||
_rollbackNeeded = true;
|
||||
FileSystem::setFolderPermissions(_path, temporaryPermissions);
|
||||
try {
|
||||
const auto stdStrPath = _path.toStdWString();
|
||||
_initialPermissions = FileSystem::isFolderReadOnly(stdStrPath) ? OCC::FileSystem::FolderPermissions::ReadOnly : OCC::FileSystem::FolderPermissions::ReadWrite;
|
||||
if (_initialPermissions != temporaryPermissions) {
|
||||
_rollbackNeeded = true;
|
||||
FileSystem::setFolderPermissions(_path, temporaryPermissions);
|
||||
}
|
||||
} catch (const std::filesystem::filesystem_error &e) {
|
||||
qCWarning(lcFileSystem()) << "exception when modifying folder permissions" << e.what() << e.path1().c_str() << e.path2().c_str();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue