summaryrefslogtreecommitdiff
path: root/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java')
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
index 74982acb4b..05f980baca 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
@@ -1536,8 +1536,9 @@ public abstract class AbstractConfiguredObject<X extends ConfiguredObject<X>> im
{
Object desired = attributes.get(name);
Object expected = getAttribute(name);
- if(((_attributes.get(name) != null && !_attributes.get(name).equals(attributes.get(name)))
- || attributes.get(name) != null)
+ Object currentValue = _attributes.get(name);
+ if(((currentValue != null && !currentValue.equals(desired))
+ || (currentValue == null && desired != null))
&& changeAttribute(name, expected, desired))
{
attributeSet(name, expected, desired);