From 52ee50a2a45b5c7ee9646e1ac4a35fbd7c74d3b0 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Sat, 4 Jan 2025 02:58:59 +0100 Subject: [PATCH] CollectionSettingsPage: Add check for filesystem type --- src/settings/collectionsettingspage.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/settings/collectionsettingspage.cpp b/src/settings/collectionsettingspage.cpp index db2788e50..98cf5a2e7 100644 --- a/src/settings/collectionsettingspage.cpp +++ b/src/settings/collectionsettingspage.cpp @@ -29,6 +29,8 @@ #include #include #include +#include +#include #include #include #include @@ -43,6 +45,7 @@ #include #include +#include "constants/filesystemconstants.h" #include "core/iconloader.h" #include "core/settings.h" #include "utilities/strutils.h" @@ -247,6 +250,12 @@ void CollectionSettingsPage::AddDirectory() { path = QDir::cleanPath(QFileDialog::getExistingDirectory(this, tr("Add directory..."), path)); if (!path.isEmpty()) { + const QByteArray filesystemtype = QStorageInfo(QFileInfo(path).canonicalFilePath()).fileSystemType(); + if (kRejectedFileSystems.contains(filesystemtype)) { + QMessageBox messagebox(QMessageBox::Critical, QObject::tr("Invalid collection directory"), QObject::tr("Can't add directory %1 with special filesystem %2 to collection").arg(path).arg(filesystemtype)); + (void)messagebox.exec(); + return; + } collectionsettings_directory_model_->AddDirectory(path); }