Переглянути джерело

Fixed spot where SDL was assuming that two displays having the same origin means they're the same display. Changed it to check for the same extents instead.

(Sam actually wrote this, I'm just reviewing and checking it in.)
Sam Lantinga 12 роки тому
батько
коміт
493fadd5c1
1 змінених файлів з 2 додано та 1 видалено
  1. 2 1
      src/video/x11/SDL_x11modes.c

+ 2 - 1
src/video/x11/SDL_x11modes.c

@@ -552,7 +552,8 @@ X11_InitModes(_THIS)
                    in all cases.  Anybody want to give this some love?
                    in all cases.  Anybody want to give this some love?
                  */
                  */
                 crtc = X11_XRRGetCrtcInfo(data->display, res, output_info->crtc);
                 crtc = X11_XRRGetCrtcInfo(data->display, res, output_info->crtc);
-                if (!crtc || crtc->x != displaydata->x || crtc->y != displaydata->y) {
+                if (!crtc || crtc->x != displaydata->x || crtc->y != displaydata->y ||
+                    crtc->width != mode.w || crtc->height != mode.h) {
                     X11_XRRFreeOutputInfo(output_info);
                     X11_XRRFreeOutputInfo(output_info);
                     X11_XRRFreeCrtcInfo(crtc);
                     X11_XRRFreeCrtcInfo(crtc);
                     continue;
                     continue;