MCPcopy Create free account
hub / github.com/MultiMC/Launcher / checkJavaFinished

Method checkJavaFinished

launcher/launch/steps/CheckJava.cpp:81–116  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

79}
80
81void CheckJava::checkJavaFinished(JavaCheckResult result)
82{
83 switch (result.validity)
84 {
85 case JavaCheckResult::Validity::Errored:
86 {
87 // Error message displayed if java can't start
88 emit logLine(QString("Could not start java:"), MessageLevel::Error);
89 emit logLines(result.errorLog.split('\n'), MessageLevel::Error);
90 emit logLine("\nCheck your MultiMC Java settings.", MessageLevel::Launcher);
91 printSystemInfo(false, false);
92 emitFailed(QString("Could not start java!"));
93 return;
94 }
95 case JavaCheckResult::Validity::ReturnedInvalidData:
96 {
97 emit logLine(QString("Java checker returned some invalid data MultiMC doesn't understand:"), MessageLevel::Error);
98 emit logLines(result.outLog.split('\n'), MessageLevel::Warning);
99 emit logLine("\nMinecraft might not start properly.", MessageLevel::Launcher);
100 printSystemInfo(false, false);
101 emitSucceeded();
102 return;
103 }
104 case JavaCheckResult::Validity::Valid:
105 {
106 auto instance = m_parent->instance();
107 printJavaInfo(result.javaVersion.toString(), result.mojangPlatform, result.javaVendor);
108 instance->settings()->set("JavaVersion", result.javaVersion.toString());
109 instance->settings()->set("JavaArchitecture", result.mojangPlatform);
110 instance->settings()->set("JavaVendor", result.javaVendor);
111 instance->settings()->set("JavaTimestamp", m_javaUnixTime);
112 emitSucceeded();
113 return;
114 }
115 }
116}
117
118void CheckJava::printJavaInfo(const QString& version, const QString& architecture, const QString & vendor)
119{

Callers

nothing calls this directly

Calls 5

QStringClass · 0.85
instanceMethod · 0.45
toStringMethod · 0.45
setMethod · 0.45
settingsMethod · 0.45

Tested by

no test coverage detected