mirror of
https://github.com/overte-org/overte.git
synced 2025-08-08 17:39:26 +02:00
this uses qt's test location for AppData/Local, but leaves Roaming alone
This commit is contained in:
parent
04160f2ca1
commit
bda50af780
3 changed files with 11 additions and 18 deletions
|
@ -71,7 +71,7 @@ int main(int argc, const char* argv[]) {
|
||||||
QCommandLineOption runServerOption("runServer", "Whether to run the server");
|
QCommandLineOption runServerOption("runServer", "Whether to run the server");
|
||||||
QCommandLineOption serverContentPathOption("serverContentPath", "Where to find server content", "serverContentPath");
|
QCommandLineOption serverContentPathOption("serverContentPath", "Where to find server content", "serverContentPath");
|
||||||
QCommandLineOption allowMultipleInstancesOption("allowMultipleInstances", "Allow multiple instances to run");
|
QCommandLineOption allowMultipleInstancesOption("allowMultipleInstances", "Allow multiple instances to run");
|
||||||
QCommandLineOption overrideAppLocalDataPathOption("cache", "Override cache directory", "value");
|
QCommandLineOption overrideAppLocalDataPathOption("cache", "set test cache directory");
|
||||||
parser.addOption(urlOption);
|
parser.addOption(urlOption);
|
||||||
parser.addOption(noUpdaterOption);
|
parser.addOption(noUpdaterOption);
|
||||||
parser.addOption(checkMinSpecOption);
|
parser.addOption(checkMinSpecOption);
|
||||||
|
@ -99,8 +99,14 @@ int main(int argc, const char* argv[]) {
|
||||||
instanceMightBeRunning = false;
|
instanceMightBeRunning = false;
|
||||||
}
|
}
|
||||||
if (parser.isSet(overrideAppLocalDataPathOption)) {
|
if (parser.isSet(overrideAppLocalDataPathOption)) {
|
||||||
QString appLocalDataPath = parser.value(overrideAppLocalDataPathOption);
|
// get standard path
|
||||||
PathUtils::getAppLocalDataPath(appLocalDataPath);
|
auto standardAppDataLocation = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation);
|
||||||
|
// set to test so all future paths are the test paths
|
||||||
|
QStandardPaths::setTestModeEnabled(true);
|
||||||
|
// now, we need to link everything in AppDataLocation to the test AppDataLocation. This
|
||||||
|
// leaves the test location for AppLocalDataLocation alone, but allows all the stuff in
|
||||||
|
// AppDataLocation to be usable
|
||||||
|
QFile::link(standardAppDataLocation, QStandardPaths::writableLocation(QStandardPaths::AppDataLocation));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (instanceMightBeRunning) {
|
if (instanceMightBeRunning) {
|
||||||
|
|
|
@ -34,20 +34,7 @@ QString PathUtils::getAppDataPath() {
|
||||||
return QStandardPaths::writableLocation(QStandardPaths::AppDataLocation) + "/";
|
return QStandardPaths::writableLocation(QStandardPaths::AppDataLocation) + "/";
|
||||||
}
|
}
|
||||||
|
|
||||||
QString PathUtils::getAppLocalDataPath(const QString& overridePath) {
|
QString PathUtils::getAppLocalDataPath() {
|
||||||
static QString overriddenPath = "";
|
|
||||||
|
|
||||||
// set the overridden path if one was passed in
|
|
||||||
if (!overridePath.isEmpty()) {
|
|
||||||
overriddenPath = overridePath;
|
|
||||||
}
|
|
||||||
|
|
||||||
// return overridden path if there is one
|
|
||||||
if (!overriddenPath.isEmpty()) {
|
|
||||||
return overriddenPath;
|
|
||||||
}
|
|
||||||
|
|
||||||
// otherwise return the standard path
|
|
||||||
return QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation) + "/";
|
return QStandardPaths::writableLocation(QStandardPaths::AppLocalDataLocation) + "/";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ public:
|
||||||
static const QString& resourcesPath();
|
static const QString& resourcesPath();
|
||||||
|
|
||||||
static QString getAppDataPath();
|
static QString getAppDataPath();
|
||||||
static QString getAppLocalDataPath(const QString& overrideDataPath = "");
|
static QString getAppLocalDataPath();
|
||||||
|
|
||||||
static QString getAppDataFilePath(const QString& filename);
|
static QString getAppDataFilePath(const QString& filename);
|
||||||
static QString getAppLocalDataFilePath(const QString& filename);
|
static QString getAppLocalDataFilePath(const QString& filename);
|
||||||
|
|
Loading…
Reference in a new issue