Commit 01b0cf1c90ccb55886a1045c76be45dc91982d90

Manuel Alfayate Corchete 2020-09-12T00:47:00

Backed out changeset 4a45d1a30d25 kmsdrm: Fake KMSDRM_SetDisplayMode() is needed for some programs after all.

diff --git a/src/video/kmsdrm/SDL_kmsdrmvideo.c b/src/video/kmsdrm/SDL_kmsdrmvideo.c
index a95f0d8..0fe093b 100644
--- a/src/video/kmsdrm/SDL_kmsdrmvideo.c
+++ b/src/video/kmsdrm/SDL_kmsdrmvideo.c
@@ -764,6 +764,7 @@ KMSDRM_CreateDevice(int devindex)
     device->VideoInit = KMSDRM_VideoInit;
     device->VideoQuit = KMSDRM_VideoQuit;
     device->GetDisplayModes = KMSDRM_GetDisplayModes;
+    device->SetDisplayMode = KMSDRM_SetDisplayMode;
     device->CreateSDLWindow = KMSDRM_CreateWindow;
     device->CreateSDLWindowFrom = KMSDRM_CreateWindowFrom;
     device->SetWindowTitle = KMSDRM_SetWindowTitle;
@@ -1550,6 +1551,19 @@ KMSDRM_GetDisplayModes(_THIS, SDL_VideoDisplay * display)
 }
 
 int
+KMSDRM_SetDisplayMode(_THIS, SDL_VideoDisplay * display, SDL_DisplayMode * mode)
+{
+    /************************************************************************/
+    /* DO NOT add dynamic videomode changes. It makes NO SENSE, since the   */
+    /* PRIMARY PLANE and the CRTC can be used to scale image, so any window */
+    /* will appear fullscren with AR correction with NO extra video memory  */
+    /* bandwidth usage.                                                     */
+    /************************************************************************/    
+
+    return 0;
+}
+
+int
 KMSDRM_CreateWindow(_THIS, SDL_Window * window)
 {
     SDL_VideoData *viddata = (SDL_VideoData *)_this->driverdata;