Sfoglia il codice sorgente

Fixed return value of SDL_GetGrabbedWindow() when we have an internal grab because of mouse relative mode

Sam Lantinga 3 anni fa
parent
commit
629e9f820a
1 ha cambiato i file con 6 aggiunte e 4 eliminazioni
  1. 6 4
      src/video/SDL_video.c

+ 6 - 4
src/video/SDL_video.c

@@ -2809,10 +2809,12 @@ SDL_GetWindowMouseGrab(SDL_Window * window)
 SDL_Window *
 SDL_GetGrabbedWindow(void)
 {
-    SDL_assert(!_this->grabbed_window ||
-               ((_this->grabbed_window->flags & SDL_WINDOW_MOUSE_GRABBED) != 0) ||
-               ((_this->grabbed_window->flags & SDL_WINDOW_KEYBOARD_GRABBED) != 0));
-    return _this->grabbed_window;
+    if (_this->grabbed_window &&
+        (_this->grabbed_window->flags & (SDL_WINDOW_MOUSE_GRABBED|SDL_WINDOW_KEYBOARD_GRABBED)) != 0) {
+        return _this->grabbed_window;
+    } else {
+        return NULL;
+    }
 }
 
 int