From 84cf53f612d9570f98404b7794d160446067d83d Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Wed, 8 Sep 2021 12:53:15 +0300 Subject: [PATCH] Fix issue in VAbstractMainWindow::CheckFilePermissions. Don't check permissions if file doesn't exist. --- src/libs/vwidgets/vabstractmainwindow.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/libs/vwidgets/vabstractmainwindow.cpp b/src/libs/vwidgets/vabstractmainwindow.cpp index 5c0cb7786..d26b64db2 100644 --- a/src/libs/vwidgets/vabstractmainwindow.cpp +++ b/src/libs/vwidgets/vabstractmainwindow.cpp @@ -252,14 +252,24 @@ void VAbstractMainWindow::UpdateRecentFileActions() //--------------------------------------------------------------------------------------------------------------------- auto VAbstractMainWindow::CheckFilePermissions(const QString &path, QWidget *messageBoxParent) -> bool { + QFileInfo info(path); + #ifdef Q_OS_WIN32 qt_ntfs_permission_lookup++; // turn checking on #endif /*Q_OS_WIN32*/ + + if (not info.exists()) + { + return true; + } + // cppcheck-suppress unreadVariable - const bool isFileWritable = QFileInfo(path).isWritable(); + const bool isFileWritable = info.isWritable(); + #ifdef Q_OS_WIN32 qt_ntfs_permission_lookup--; // turn it off again #endif /*Q_OS_WIN32*/ + if (not isFileWritable) { QMessageBox messageBox(messageBoxParent);