From 2586788bf691d83c0e198e6c2b3118a02724af36 Mon Sep 17 00:00:00 2001 From: RK_01 <50594595+RaphiMC@users.noreply.github.com> Date: Wed, 10 Apr 2024 17:35:25 +0200 Subject: [PATCH] Fix config read/write error when parent file is null (#3783) --- .../com/viaversion/viaversion/util/Config.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/common/src/main/java/com/viaversion/viaversion/util/Config.java b/common/src/main/java/com/viaversion/viaversion/util/Config.java index 05345aa3d..53908e8d1 100644 --- a/common/src/main/java/com/viaversion/viaversion/util/Config.java +++ b/common/src/main/java/com/viaversion/viaversion/util/Config.java @@ -21,9 +21,6 @@ import com.google.gson.JsonElement; import com.viaversion.viaversion.compatibility.YamlCompat; import com.viaversion.viaversion.compatibility.unsafe.Yaml1Compat; import com.viaversion.viaversion.compatibility.unsafe.Yaml2Compat; -import org.checkerframework.checker.nullness.qual.Nullable; -import org.yaml.snakeyaml.DumperOptions; -import org.yaml.snakeyaml.Yaml; import java.io.File; import java.io.FileInputStream; import java.io.IOException; @@ -35,6 +32,9 @@ import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentSkipListMap; import java.util.logging.Logger; +import org.checkerframework.checker.nullness.qual.Nullable; +import org.yaml.snakeyaml.DumperOptions; +import org.yaml.snakeyaml.Yaml; @SuppressWarnings("VulnerableCodeUsages") public abstract class Config { @@ -148,7 +148,9 @@ public abstract class Config { } public void save() { - this.configFile.getParentFile().mkdirs(); + if (this.configFile.getParentFile() != null) { + this.configFile.getParentFile().mkdirs(); + } save(this.configFile, this.config); } @@ -157,7 +159,9 @@ public abstract class Config { } public void reload() { - this.configFile.getParentFile().mkdirs(); + if (this.configFile.getParentFile() != null) { + this.configFile.getParentFile().mkdirs(); + } this.config = new ConcurrentSkipListMap<>(loadConfig(this.configFile)); } @@ -245,4 +249,4 @@ public abstract class Config { return null; } } -} +} \ No newline at end of file