diff --git a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/WindowEditor.java b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/WindowEditor.java
index a9d113e..36a76d7 100644
--- a/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/WindowEditor.java
+++ b/bundles/org.eclipse.e4.tools.emf.ui/src/org/eclipse/e4/tools/emf/ui/internal/common/component/WindowEditor.java
@@ -366,16 +366,20 @@
 		}
 
 		E4Properties.mainMenu().observe(window).addValueChangeListener(event -> {
+			if (createRemoveMainMenu.isDisposed() || getMaster().isDisposed()) {
+				return;
+			}
+
 			if (event.diff.getOldValue() != null) {
 				list.remove(event.diff.getOldValue());
-				if (getMaster().getValue() == element && !createRemoveMainMenu.isDisposed()) {
+				if (getMaster().getValue() == element) {
 					createRemoveMainMenu.setSelection(false);
 				}
 			}
 
 			if (event.diff.getNewValue() != null) {
 				list.add(0, event.diff.getNewValue());
-				if (getMaster().getValue() == element && !createRemoveMainMenu.isDisposed()) {
+				if (getMaster().getValue() == element) {
 					createRemoveMainMenu.setSelection(true);
 				}
 			}
