Compare commits

..
5 Commits
Author SHA1 Message Date
isanae e473caf14a Merge pull request #1415 from isanae/master
2.4rc3
2021-02-19 18:23:01 -05:00
isanae 1c87f1d8d4 rc3 2021-02-19 18:21:53 -05:00
Mikaël Capelle bb6cde175a Bump version to 2.4.0. 2021-02-19 20:08:47 +01:00
Mikaël Capelle bd93864ed2 Merge pull request #1409 from isanae/portable-loop
Portable instance loop.
2021-02-13 18:25:39 +01:00
isanae 406d6f28c0 force instance selection when the current instance cannot be used
the problem is that an empty instance name means the portable instance, but MO clears the name when it needs instance selection, which can create a loop if the portable instance can't be used
2021-02-13 07:54:05 -05:00
4 changed files with 10 additions and 4 deletions
+7 -2
View File
@@ -80,7 +80,8 @@ int run(int argc, char *argv[])
// stuff that's done only once, even if MO restarts in the loop below
app.firstTimeSetup(multiProcess);
// force the "Select instance" dialog on startup (only for first loop)
// force the "Select instance" dialog on startup, only for first loop or when
// the current instance cannot be used
bool pick = cl.pick();
// MO runs in a loop because it can be restarted in several ways, such as
@@ -105,13 +106,17 @@ int run(int argc, char *argv[])
const auto r = app.setup(multiProcess, pick);
pick = false;
if (r == RestartExitCode) {
if (r == RestartExitCode || r == ReselectExitCode) {
// resets things when MO is "restarted"
app.resetForRestart();
// don't reprocess command line
cl.clear();
if (r == ReselectExitCode) {
pick = true;
}
continue;
} else if (r != 0) {
// something failed, quit
+1 -1
View File
@@ -492,7 +492,7 @@ std::optional<int> MOApplication::setupInstanceLoop(
continue;
} else if (setupResult == SetupInstanceResults::SelectAnother) {
InstanceManager::singleton().clearCurrentInstance();
return RestartExitCode;
return ReselectExitCode;
} else {
return 1;
}
+1
View File
@@ -74,6 +74,7 @@ enum class Exit
};
const int RestartExitCode = INT_MAX;
const int ReselectExitCode = INT_MAX - 1;
using ExitFlags = QFlags<Exit>;
Q_DECLARE_OPERATORS_FOR_FLAGS(ExitFlags);
+1 -1
View File
@@ -4,7 +4,7 @@
// Otherwise, if letters are used in VER_FILEVERSION_STR, uses the full MOBase::VersionInfo parser
// Otherwise, uses the numbers from VER_FILEVERSION and sets the release type as pre-alpha
#define VER_FILEVERSION 2,4,0
#define VER_FILEVERSION_STR "2.4.0rc2\0"
#define VER_FILEVERSION_STR "2.4.0rc3\0"
VS_VERSION_INFO VERSIONINFO
FILEVERSION VER_FILEVERSION