From: Stefan F. <ste...@us...> - 2012-04-03 14:36:35
|
rails/common/ConfigProfile.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) New commits: commit bf4edec12c22ba77b954fc4cdfb6912557ccd79a Author: Stefan Frey <ste...@we...> Date: Tue Apr 3 16:34:47 2012 +0200 fixed wrong logic in setProperty of configProfile diff --git a/rails/common/ConfigProfile.java b/rails/common/ConfigProfile.java index 1057a72..1ee6876 100644 --- a/rails/common/ConfigProfile.java +++ b/rails/common/ConfigProfile.java @@ -188,10 +188,10 @@ public final class ConfigProfile implements Comparable<ConfigProfile> { void setProperty(String key, String value) { ensureLoad(); - if (!parent.getProperty(key).equals(value)) { - properties.setProperty(key, value); - } else { + if (parent.getProperty(key) != null && parent.getProperty(key).equals(value)) { properties.remove(key); + } else { + properties.setProperty(key, value); } } @@ -219,7 +219,8 @@ public final class ConfigProfile implements Comparable<ConfigProfile> { newProfile.setParent(reference); // copy properties - for (String key:properties.stringPropertyNames()){ + for (Object k:properties.keySet()){ + String key = (String)k; if (!key.equals(PARENT_KEY) && !key.equals(FINAL_KEY)) { newProfile.setProperty(key, properties.getProperty(key)); } @@ -350,6 +351,7 @@ public final class ConfigProfile implements Comparable<ConfigProfile> { result = false; } + if (result) { // and reassign and save children for (ConfigProfile child:getChildren()) { @@ -382,3 +384,4 @@ public final class ConfigProfile implements Comparable<ConfigProfile> { } + |