diff options
author | sleak <sleak@sleak-PC> | 2011-12-16 09:23:53 -0800 |
---|---|---|
committer | Nathan Adams <dinnerbone@dinnerbone.com> | 2011-12-19 16:13:07 +0000 |
commit | 28372908d7bc6716e19472a25024071a0705a129 (patch) | |
tree | 25277890451e87fb01bf259fb6b37996aa46c97e | |
parent | 72135a8e83774f492bd9cca49a8aa0b0cc4d222d (diff) | |
download | bukkit-28372908d7bc6716e19472a25024071a0705a129.tar bukkit-28372908d7bc6716e19472a25024071a0705a129.tar.gz bukkit-28372908d7bc6716e19472a25024071a0705a129.tar.lz bukkit-28372908d7bc6716e19472a25024071a0705a129.tar.xz bukkit-28372908d7bc6716e19472a25024071a0705a129.zip |
fix for BUKKIT-342 - getConfigurationSection returning the default section instead of creating a new section if defaults are present.
-rw-r--r-- | src/main/java/org/bukkit/configuration/MemorySection.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/org/bukkit/configuration/MemorySection.java b/src/main/java/org/bukkit/configuration/MemorySection.java index a2eb99df..99c3e819 100644 --- a/src/main/java/org/bukkit/configuration/MemorySection.java +++ b/src/main/java/org/bukkit/configuration/MemorySection.java @@ -881,9 +881,13 @@ public class MemorySection implements ConfigurationSection { if (path == null) { throw new IllegalArgumentException("Path cannot be null"); } - - Object val = get(path, getDefault(path)); - return (val instanceof ConfigurationSection) ? (ConfigurationSection)val : null; + + Object val = get(path, null); + if (val != null) + return (val instanceof ConfigurationSection) ? (ConfigurationSection)val : null; + + val = get(path, getDefault(path)); + return (val instanceof ConfigurationSection) ? createSection(path) : null; } public boolean isConfigurationSection(String path) { |