diff --git a/src/main/java/org/olat/course/run/CourseRuntimeController.java b/src/main/java/org/olat/course/run/CourseRuntimeController.java
index 10ca9f9786e4d1fd268da35ed31fcd5878d8c5bb..10eec654cd75e610c8340f4761fdec6be4ec3b98 100644
--- a/src/main/java/org/olat/course/run/CourseRuntimeController.java
+++ b/src/main/java/org/olat/course/run/CourseRuntimeController.java
@@ -752,7 +752,13 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im
 				initToolbar();
 				toolControllerDone(ureq);
 			}
-		} else if(source == editorCtrl && source instanceof VetoableCloseController) {
+		} else if(source == leaveDialogBox) {
+			if (DialogBoxUIFactory.isYesEvent(event) || DialogBoxUIFactory.isOkEvent(event)) {
+				doLeave(ureq);
+			}
+		}
+		
+		if(editorCtrl == source && source instanceof VetoableCloseController) {
 			if(event == Event.DONE_EVENT) {
 				if(delayedClose != null) {
 					switch(delayedClose) {
@@ -783,11 +789,7 @@ public class CourseRuntimeController extends RepositoryEntryRuntimeController im
 					fireEvent(ureq, Event.DONE_EVENT);
 				}
 			}
-		} else if(source == leaveDialogBox) {
-			if (DialogBoxUIFactory.isYesEvent(event) || DialogBoxUIFactory.isOkEvent(event)) {
-				doLeave(ureq);
-			}
-		}
+		} 
 		
 		super.event(ureq, source, event);
 	}