mirror of
https://github.com/chylex/Nextcloud-Desktop.git
synced 2025-05-11 20:34:09 +02:00
vfs: Improve modeFromString() signature
This commit is contained in:
parent
f502a526fa
commit
9ced8dd836
src
@ -42,20 +42,17 @@ QString Vfs::modeToString(Mode mode)
|
||||
return QStringLiteral("off");
|
||||
}
|
||||
|
||||
bool Vfs::modeFromString(const QString &str, Mode *mode)
|
||||
Optional<Vfs::Mode> Vfs::modeFromString(const QString &str)
|
||||
{
|
||||
// Note: Strings are used for config and must be stable
|
||||
*mode = Off;
|
||||
if (str == "off") {
|
||||
return true;
|
||||
return Off;
|
||||
} else if (str == "suffix") {
|
||||
*mode = WithSuffix;
|
||||
return true;
|
||||
return WithSuffix;
|
||||
} else if (str == "wincfapi") {
|
||||
*mode = WindowsCfApi;
|
||||
return true;
|
||||
return WindowsCfApi;
|
||||
}
|
||||
return false;
|
||||
return {};
|
||||
}
|
||||
|
||||
static QString modeToPluginName(Vfs::Mode mode)
|
||||
|
@ -18,6 +18,7 @@
|
||||
#include <QSharedPointer>
|
||||
|
||||
#include "ocsynclib.h"
|
||||
#include "result.h"
|
||||
|
||||
typedef struct csync_file_stat_s csync_file_stat_t;
|
||||
|
||||
@ -80,7 +81,7 @@ public:
|
||||
WindowsCfApi,
|
||||
};
|
||||
static QString modeToString(Mode mode);
|
||||
static bool modeFromString(const QString &str, Mode *mode);
|
||||
static Optional<Mode> modeFromString(const QString &str);
|
||||
|
||||
public:
|
||||
Vfs(QObject* parent = nullptr);
|
||||
|
@ -1236,7 +1236,9 @@ bool FolderDefinition::load(QSettings &settings, const QString &alias,
|
||||
folder->virtualFilesMode = Vfs::Off;
|
||||
QString vfsModeString = settings.value(QStringLiteral("virtualFilesMode")).toString();
|
||||
if (!vfsModeString.isEmpty()) {
|
||||
if (!Vfs::modeFromString(vfsModeString, &folder->virtualFilesMode)) {
|
||||
if (auto mode = Vfs::modeFromString(vfsModeString)) {
|
||||
folder->virtualFilesMode = *mode;
|
||||
} else {
|
||||
qCWarning(lcFolder) << "Unknown virtualFilesMode:" << vfsModeString << "assuming 'off'";
|
||||
}
|
||||
} else if (settings.value(QLatin1String("usePlaceholders")).toBool()) {
|
||||
|
Loading…
Reference in New Issue
Block a user