aboutsummaryrefslogtreecommitdiff
path: root/launcher/minecraft/MojangVersionFormat.cpp
diff options
context:
space:
mode:
authorSefa Eyeoglu <contact@scrumplex.net>2022-03-24 14:47:22 +0100
committerSefa Eyeoglu <contact@scrumplex.net>2022-03-24 16:10:39 +0100
commit82c35f27464e3fd0d0aaa4f9e495e895f8534799 (patch)
treee162e482fb47d149629f91a0d27b6f99f4c62c7a /launcher/minecraft/MojangVersionFormat.cpp
parentc7fdfb811669a863606dc0a26186c0ab827db9c6 (diff)
downloadPrismLauncher-82c35f27464e3fd0d0aaa4f9e495e895f8534799.tar.gz
PrismLauncher-82c35f27464e3fd0d0aaa4f9e495e895f8534799.tar.bz2
PrismLauncher-82c35f27464e3fd0d0aaa4f9e495e895f8534799.zip
feat: block launch if Java is incompatible
Keep track of compatible Java versions from meta. Launch-step VerifyJavaInstall will check if current instance's Java version is compatible. Also add override option both globally and per-instance in-case the user doesn't care about the requirement.
Diffstat (limited to 'launcher/minecraft/MojangVersionFormat.cpp')
-rw-r--r--launcher/minecraft/MojangVersionFormat.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/launcher/minecraft/MojangVersionFormat.cpp b/launcher/minecraft/MojangVersionFormat.cpp
index ff5409fd..d0bf7fc5 100644
--- a/launcher/minecraft/MojangVersionFormat.cpp
+++ b/launcher/minecraft/MojangVersionFormat.cpp
@@ -183,6 +183,15 @@ void MojangVersionFormat::readVersionProperties(const QJsonObject &in, VersionFi
);
}
}
+
+ if (in.contains("compatibleJavaMajors"))
+ {
+ for (auto compatible : requireArray(in.value("compatibleJavaMajors")))
+ {
+ out->compatibleJavaMajors.append(requireInteger(compatible));
+ }
+ }
+
if(in.contains("downloads"))
{
auto downloadsObj = requireObject(in, "downloads");