diff --git a/src/console.c b/src/console.c
index 01d1ddaa25f1b275b3e5e27ab3d3389736af98c9..5a74c85b67490e6af8e5e06a9a69f7a98fa8fad9 100644
--- a/src/console.c
+++ b/src/console.c
@@ -777,7 +777,7 @@ boolean CON_Responder(event_t *ev)
 	// check for console toggle key
 	if (ev->type != ev_console)
 	{
-		if (modeattacking || metalrecording)
+		if (modeattacking || metalrecording || menuactive)
 			return false;
 
 		if (key == gamecontrol[gc_console][0] || key == gamecontrol[gc_console][1])
diff --git a/src/d_main.c b/src/d_main.c
index e55c65bbbf0e5033c86f9f77f3ec35335ebffa1b..62ec9e4497b4ff3896f54017c01228daeea5b06d 100644
--- a/src/d_main.c
+++ b/src/d_main.c
@@ -188,14 +188,14 @@ void D_ProcessEvents(void)
 				continue;
 		}
 
-		// Menu input
-		if (M_Responder(ev))
-			continue; // menu ate the event
-
 		// console input
 		if (CON_Responder(ev))
 			continue; // ate the event
 
+		// Menu input
+		if (M_Responder(ev))
+			continue; // menu ate the event
+
 		G_Responder(ev);
 	}
 }