From 0d35dc0a838ec9854c792ca36d681f03db3f72e3 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Tue, 28 Aug 2018 13:07:26 -0700 Subject: [PATCH] Fixed bug 1155 - Should SDL_WM_GrabInput()/X11_GrabInputNoLock() block? Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not viewable. Patch provided by . --- src/video/x11/SDL_x11wm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/video/x11/SDL_x11wm.c b/src/video/x11/SDL_x11wm.c index 14c816b94..fe0f6a54a 100644 --- a/src/video/x11/SDL_x11wm.c +++ b/src/video/x11/SDL_x11wm.c @@ -352,13 +352,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS, SDL_GrabMode mode) result = XGrabPointer(SDL_Display, SDL_Window, True, 0, GrabModeAsync, GrabModeAsync, SDL_Window, None, CurrentTime); - if ( result == GrabSuccess ) { + if ( result == GrabSuccess || result == GrabNotViewable ) { break; } SDL_Delay(100); } if ( result != GrabSuccess ) { /* Uh, oh, what do we do here? */ ; + return(SDL_GRAB_OFF); } /* Now grab the keyboard */ XGrabKeyboard(SDL_Display, WMwindow, True,