| 112 | } |
| 113 | |
| 114 | void CheckJava::checkJavaFinished(JavaCheckResult result) |
| 115 | { |
| 116 | switch (result.validity) |
| 117 | { |
| 118 | case JavaCheckResult::Validity::Errored: |
| 119 | { |
| 120 | // Error message displayed if java can't start |
| 121 | emit logLine(QString("Could not start java:"), MessageLevel::Error); |
| 122 | emit logLines(result.errorLog.split('\n'), MessageLevel::Error); |
| 123 | emit logLine(QString("\nCheck your Java settings."), MessageLevel::Launcher); |
| 124 | emitFailed(QString("Could not start java!")); |
| 125 | return; |
| 126 | } |
| 127 | case JavaCheckResult::Validity::ReturnedInvalidData: |
| 128 | { |
| 129 | emit logLine(QString("Java checker returned some invalid data we don't understand:"), MessageLevel::Error); |
| 130 | emit logLines(result.outLog.split('\n'), MessageLevel::Warning); |
| 131 | emit logLine("\nMinecraft might not start properly.", MessageLevel::Launcher); |
| 132 | emitSucceeded(); |
| 133 | return; |
| 134 | } |
| 135 | case JavaCheckResult::Validity::Valid: |
| 136 | { |
| 137 | auto instance = m_parent->instance(); |
| 138 | printJavaInfo(result.javaVersion.toString(), result.mojangPlatform, result.realPlatform, result.javaVendor); |
| 139 | instance->settings()->set("JavaVersion", result.javaVersion.toString()); |
| 140 | instance->settings()->set("JavaArchitecture", result.mojangPlatform); |
| 141 | instance->settings()->set("JavaRealArchitecture", result.realPlatform); |
| 142 | instance->settings()->set("JavaVendor", result.javaVendor); |
| 143 | instance->settings()->set("JavaTimestamp", m_javaUnixTime); |
| 144 | emitSucceeded(); |
| 145 | return; |
| 146 | } |
| 147 | } |
| 148 | } |
| 149 | |
| 150 | void CheckJava::printJavaInfo(const QString& version, const QString& architecture, const QString& realArchitecture, const QString & vendor) |
| 151 | { |