diff --git a/src/m_menu.c b/src/m_menu.c
index 1a3c43b75506d244dd0d4cf1b55e54cc5d966a63..5d1bbd07d1116f97d8907698252df18e005cb36c 100644
--- a/src/m_menu.c
+++ b/src/m_menu.c
@@ -3212,10 +3212,7 @@ boolean M_Responder(event_t *ev)
 
 			case KEY_ESCAPE: // Pop up menu
 				if (chat_on)
-				{
 					HU_clearChatChars();
-					chat_on = false;
-				}
 				else
 					M_StartControlPanel();
 				return true;
diff --git a/src/sdl/i_video.c b/src/sdl/i_video.c
index d6b36d0edfaed245707f56b97a0add1be47c52c6..e1b3781d9d236bebef10351222ef9fc4bf55fecb 100644
--- a/src/sdl/i_video.c
+++ b/src/sdl/i_video.c
@@ -380,12 +380,7 @@ static void SDLdoUngrabMouse(void)
 void SDLforceUngrabMouse(void)
 {
 	if (SDL_WasInit(SDL_INIT_VIDEO)==SDL_INIT_VIDEO && window != NULL)
-	{
-		SDL_ShowCursor(SDL_ENABLE);
-		SDL_SetWindowGrab(window, SDL_FALSE);
-		wrapmouseok = SDL_FALSE;
-		SDL_SetRelativeMouseMode(SDL_FALSE);
-	}
+		SDLdoUngrabMouse();
 }
 
 void I_UpdateMouseGrab(void)