aboutsummaryrefslogtreecommitdiff
path: root/launcher/Application.cpp
diff options
context:
space:
mode:
authorLennyMcLennington <lenny@sneed.church>2022-02-17 23:43:59 +0000
committerGitHub <noreply@github.com>2022-02-17 23:43:59 +0000
commit12c8a044584019302137de41ae5e437eafefa7bf (patch)
treea2b734e5b96110d6067ef1a5825f3a052aa0dcfd /launcher/Application.cpp
parent796e58b6f2afc47f043db386fd5b439164dc9d90 (diff)
parent6b4469c6cce517dabe967c12b30648e0c41f12d5 (diff)
downloadPrismLauncher-12c8a044584019302137de41ae5e437eafefa7bf.tar.gz
PrismLauncher-12c8a044584019302137de41ae5e437eafefa7bf.tar.bz2
PrismLauncher-12c8a044584019302137de41ae5e437eafefa7bf.zip
Merge pull request #173 from Scrumplex/fix-application-cpp
fix: improve code readability in Application.cpp
Diffstat (limited to 'launcher/Application.cpp')
-rw-r--r--launcher/Application.cpp46
1 files changed, 19 insertions, 27 deletions
diff --git a/launcher/Application.cpp b/launcher/Application.cpp
index a3d6216e..e916dcf7 100644
--- a/launcher/Application.cpp
+++ b/launcher/Application.cpp
@@ -285,12 +285,21 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv)
return;
}
}
+
m_instanceIdToLaunch = args["launch"].toString();
m_serverToJoin = args["server"].toString();
m_profileToUse = args["profile"].toString();
m_liveCheck = args["alive"].toBool();
m_zipToImport = args["import"].toUrl();
+ // error if --launch is missing with --server or --profile
+ if((!m_serverToJoin.isEmpty() || !m_profileToUse.isEmpty()) && m_instanceIdToLaunch.isEmpty())
+ {
+ std::cerr << "--server and --profile can only be used in combination with --launch!" << std::endl;
+ m_status = Application::Failed;
+ return;
+ }
+
QString origcwdPath = QDir::currentPath();
QString binPath = applicationDirPath();
QString adjustedBy;
@@ -359,20 +368,6 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv)
return;
}
- if(m_instanceIdToLaunch.isEmpty() && !m_serverToJoin.isEmpty())
- {
- std::cerr << "--server can only be used in combination with --launch!" << std::endl;
- m_status = Application::Failed;
- return;
- }
-
- if(m_instanceIdToLaunch.isEmpty() && !m_profileToUse.isEmpty())
- {
- std::cerr << "--account can only be used in combination with --launch!" << std::endl;
- m_status = Application::Failed;
- return;
- }
-
#if defined(Q_OS_MAC)
// move user data to new location if on macOS and it still exists in Contents/MacOS
QDir fi(applicationDirPath());
@@ -566,26 +561,23 @@ Application::Application(int &argc, char **argv) : QApplication(argc, argv)
qDebug() << "<> Paths set.";
}
- do // once
+ if(m_liveCheck)
{
- if(m_liveCheck)
+ QFile check(liveCheckFile);
+ if(check.open(QIODevice::WriteOnly | QIODevice::Truncate))
{
- QFile check(liveCheckFile);
- if(!check.open(QIODevice::WriteOnly | QIODevice::Truncate))
- {
- qWarning() << "Could not open" << liveCheckFile << "for writing!";
- break;
- }
auto payload = appID.toString().toUtf8();
- if(check.write(payload) != payload.size())
+ if(check.write(payload) == payload.size())
{
+ check.close();
+ } else {
qWarning() << "Could not write into" << liveCheckFile << "!";
- check.remove();
- break;
+ check.remove(); // also closes file!
}
- check.close();
+ } else {
+ qWarning() << "Could not open" << liveCheckFile << "for writing!";
}
- } while(false);
+ }
// Initialize application settings
{