diff --git a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonAdminController.java b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonAdminController.java
index 4ac6053ca0e4f3ab50f7245b340f7b7744c08857..090b0e7cf704850d1ddcf445d97532eea9a896e7 100644
--- a/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonAdminController.java
+++ b/src/main/java/org/olat/modules/bigbluebutton/ui/BigBlueButtonAdminController.java
@@ -145,13 +145,12 @@ public class BigBlueButtonAdminController extends BasicController implements Act
 	}
 	
 	private void doOpenConfiguration(UserRequest ureq) {
-		if(configCtrl == null) {
-			WindowControl bwControl = addToHistory(ureq, OresHelper.createOLATResourceableInstance("Configuration", 0l), null);
-			configCtrl = new BigBlueButtonConfigurationController(ureq, bwControl);
-			listenTo(configCtrl);
-		} else {
-			addToHistory(ureq, configCtrl);
-		}
+		removeAsListenerAndDispose(configCtrl);
+
+		WindowControl bwControl = addToHistory(ureq, OresHelper.createOLATResourceableInstance("Configuration", 0l), null);
+		configCtrl = new BigBlueButtonConfigurationController(ureq, bwControl);
+		listenTo(configCtrl);
+
 		mainVC.put("segmentCmp", configCtrl.getInitialComponent());
 	}