summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathan Adams <dinnerbone@dinnerbone.com>2011-10-11 12:16:43 +0100
committerNathan Adams <dinnerbone@dinnerbone.com>2011-10-11 12:16:43 +0100
commit252fc76816b4f66cb52d2851b52b896cb4788618 (patch)
tree72941f72f0e15900bbb8b4d13e24bd7ad4dd970f
parentc97dbc198d598f5701d0a28ca0867ee691ff326f (diff)
downloadbukkit-252fc76816b4f66cb52d2851b52b896cb4788618.tar
bukkit-252fc76816b4f66cb52d2851b52b896cb4788618.tar.gz
bukkit-252fc76816b4f66cb52d2851b52b896cb4788618.tar.lz
bukkit-252fc76816b4f66cb52d2851b52b896cb4788618.tar.xz
bukkit-252fc76816b4f66cb52d2851b52b896cb4788618.zip
Fixed removing entries in the new Configuration (via set(x, null))
-rw-r--r--src/main/java/org/bukkit/configuration/MemorySection.java6
-rw-r--r--src/test/java/org/bukkit/configuration/ConfigurationSectionTest.java8
2 files changed, 13 insertions, 1 deletions
diff --git a/src/main/java/org/bukkit/configuration/MemorySection.java b/src/main/java/org/bukkit/configuration/MemorySection.java
index b122f4f1..bf2cfb00 100644
--- a/src/main/java/org/bukkit/configuration/MemorySection.java
+++ b/src/main/java/org/bukkit/configuration/MemorySection.java
@@ -186,7 +186,11 @@ public class MemorySection implements ConfigurationSection {
String key = split[split.length - 1];
if (section == this) {
- map.put(key, prepForStorage(value));
+ if (value == null) {
+ map.remove(key);
+ } else {
+ map.put(key, prepForStorage(value));
+ }
} else {
section.set(key, value);
}
diff --git a/src/test/java/org/bukkit/configuration/ConfigurationSectionTest.java b/src/test/java/org/bukkit/configuration/ConfigurationSectionTest.java
index 144fba3a..290b7844 100644
--- a/src/test/java/org/bukkit/configuration/ConfigurationSectionTest.java
+++ b/src/test/java/org/bukkit/configuration/ConfigurationSectionTest.java
@@ -162,7 +162,15 @@ public abstract class ConfigurationSectionTest {
ConfigurationSection section = getConfigurationSection();
section.set("exists", "hello world");
+
+ assertTrue(section.contains("exists"));
+ assertTrue(section.isSet("exists"));
assertEquals("hello world", section.get("exists"));
+
+ section.set("exists", null);
+
+ assertFalse(section.contains("exists"));
+ assertFalse(section.isSet("exists"));
}
@Test