ASSIGNED - bug 221704: [DataBinding] BeansObservables.observeMap(Object bean, String propertyName)
https://bugs.eclipse.org/bugs/show_bug.cgi?id=221704

MapEntryObservableValue.dispose null pointer error
diff --git a/bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java b/bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java
index 3bab2cd..3340eb6 100644
--- a/bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java
+++ b/bundles/org.eclipse.core.databinding.observable/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java
@@ -89,7 +89,7 @@
 	}
 
 	public synchronized void dispose() {
-		if (map == null) {
+		if (map != null) {
 			map.removeMapChangeListener(changeListener);
 			map.removeStaleListener(staleListener);
 			map = null;
diff --git a/bundles/org.eclipse.core.databinding/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java b/bundles/org.eclipse.core.databinding/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java
index 3bab2cd..3340eb6 100644
--- a/bundles/org.eclipse.core.databinding/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java
+++ b/bundles/org.eclipse.core.databinding/src/org/eclipse/core/internal/databinding/observable/MapEntryObservableValue.java
@@ -89,7 +89,7 @@
 	}
 
 	public synchronized void dispose() {
-		if (map == null) {
+		if (map != null) {
 			map.removeMapChangeListener(changeListener);
 			map.removeStaleListener(staleListener);
 			map = null;