From 4f704653954d2ddd6455292cd0720501980aebce Mon Sep 17 00:00:00 2001 From: huanghongxun Date: Wed, 29 Apr 2020 21:41:58 +0800 Subject: [PATCH] fix: crash when JavaSoft registries are malformed. --- .../java/org/jackhuang/hmcl/util/platform/JavaVersion.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java index aad6e63f5..c18310be6 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java @@ -25,6 +25,7 @@ import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.nio.file.Files; +import java.nio.file.InvalidPathException; import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; @@ -259,7 +260,11 @@ public final class JavaVersion { continue; String home = queryRegisterValue(java, "JavaHome"); if (home != null) { - homes.add(Paths.get(home)); + try { + homes.add(Paths.get(home)); + } catch (InvalidPathException e) { + LOG.log(Level.WARNING, "Invalid Java path in system registry: " + home); + } } } return homes;