Small fix

This commit is contained in:
paulevsGitch 2020-12-31 07:50:29 +03:00
parent 56771daea9
commit 35ed6a05b1

View file

@ -40,20 +40,15 @@ public final class ConfigKeeper {
return; return;
} }
String[] path = key.getPath(); String[] path = key.getPath();
JsonObject obj = null; JsonObject obj = configObject;
if (!key.isRoot()) { if (!key.isRoot()) {
for (String group: path) { for (String group: path) {
JsonElement element = configObject.get(group); JsonElement element = obj.get(group);
if (element == null || !element.isJsonObject()) { if (element == null || !element.isJsonObject()) {
changed = true;
element = new JsonObject(); element = new JsonObject();
if (obj == null) { obj.add(group, element);
obj = element.getAsJsonObject();
configObject.add(group, obj);
}
else {
obj.add(group, element);
}
} }
obj = element.getAsJsonObject(); obj = element.getAsJsonObject();
} }
@ -61,7 +56,8 @@ public final class ConfigKeeper {
String paramKey = key.getEntry(); String paramKey = key.getEntry();
paramKey += " [default: " + entry.getDefault() + "]"; paramKey += " [default: " + entry.getDefault() + "]";
this.changed = entry.setLocation(obj == null ? configObject : obj, paramKey);
changed = entry.setLocation(obj, paramKey) || changed;
} }
private <T, E extends Entry<T>> void storeValue(E entry, T value) { private <T, E extends Entry<T>> void storeValue(E entry, T value) {