Rémi Bernon : wineandroid.drv: Return early on EnumDisplaySettingsEx error.

Alexandre Julliard julliard at winehq.org
Mon Aug 8 15:17:50 CDT 2022


Module: wine
Branch: master
Commit: 25c57c79a7d90cc6f888ec563776b54686a7fafd
URL:    https://gitlab.winehq.org/wine/wine/-/commit/25c57c79a7d90cc6f888ec563776b54686a7fafd

Author: Rémi Bernon <rbernon at codeweavers.com>
Date:   Thu Aug  4 10:20:05 2022 +0200

wineandroid.drv: Return early on EnumDisplaySettingsEx error.

---

 dlls/wineandroid.drv/init.c | 34 ++++++++++++++++------------------
 1 file changed, 16 insertions(+), 18 deletions(-)

diff --git a/dlls/wineandroid.drv/init.c b/dlls/wineandroid.drv/init.c
index 04328346852..f6c8eec8c34 100644
--- a/dlls/wineandroid.drv/init.c
+++ b/dlls/wineandroid.drv/init.c
@@ -309,29 +309,27 @@ BOOL ANDROID_UpdateDisplayDevices( const struct gdi_device_manager *device_manag
  */
 BOOL ANDROID_EnumDisplaySettingsEx( LPCWSTR name, DWORD n, LPDEVMODEW devmode, DWORD flags )
 {
+    if (n > 0 && n != ENUM_CURRENT_SETTINGS)
+    {
+        TRACE( "mode %d -- not present\n", n );
+        SetLastError( ERROR_NO_MORE_FILES );
+        return FALSE;
+    }
+
     devmode->u2.dmDisplayFlags = 0;
-    devmode->dmDisplayFrequency = 0;
     devmode->u1.s2.dmPosition.x = 0;
     devmode->u1.s2.dmPosition.y = 0;
     devmode->u1.s2.dmDisplayOrientation = 0;
     devmode->u1.s2.dmDisplayFixedOutput = 0;
-
-    if (n == ENUM_CURRENT_SETTINGS) n = 0;
-    if (n == 0)
-    {
-        devmode->dmPelsWidth = screen_width;
-        devmode->dmPelsHeight = screen_height;
-        devmode->dmBitsPerPel = screen_bpp;
-        devmode->dmDisplayFrequency = 60;
-        devmode->dmFields = DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFLAGS | DM_DISPLAYFREQUENCY;
-        TRACE( "mode %d -- %dx%d %d bpp @%d Hz\n", n,
-               devmode->dmPelsWidth, devmode->dmPelsHeight,
-               devmode->dmBitsPerPel, devmode->dmDisplayFrequency );
-        return TRUE;
-    }
-    TRACE( "mode %d -- not present\n", n );
-    SetLastError( ERROR_NO_MORE_FILES );
-    return FALSE;
+    devmode->dmPelsWidth = screen_width;
+    devmode->dmPelsHeight = screen_height;
+    devmode->dmBitsPerPel = screen_bpp;
+    devmode->dmDisplayFrequency = 60;
+    devmode->dmFields = DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL | DM_DISPLAYFLAGS | DM_DISPLAYFREQUENCY;
+    TRACE( "mode %d -- %dx%d %d bpp @%d Hz\n", n,
+           devmode->dmPelsWidth, devmode->dmPelsHeight,
+           devmode->dmBitsPerPel, devmode->dmDisplayFrequency );
+    return TRUE;
 }
 
 




More information about the wine-cvs mailing list