https://git.reactos.org/?p=reactos.git;a=commitdiff;h=42914af218a46728e6e4f29467f551970105e48f

commit 42914af218a46728e6e4f29467f551970105e48f
Author:     Hervé Poussineau <hpous...@reactos.org>
AuthorDate: Sun Oct 13 22:28:51 2024 +0200
Commit:     Hervé Poussineau <hpous...@reactos.org>
CommitDate: Mon Oct 14 23:26:11 2024 +0200

    [WIN32SS:ENG] Only accept VGASave service (ie vga.sys driver) as the real 
VGA device
    
    CORE-19796
---
 win32ss/gdi/eng/device.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/win32ss/gdi/eng/device.c b/win32ss/gdi/eng/device.c
index 1f11e5fef01..4744124b85e 100644
--- a/win32ss/gdi/eng/device.c
+++ b/win32ss/gdi/eng/device.c
@@ -94,8 +94,8 @@ EngpHasVgaDriver(
         return FALSE;
     }
 
-    /* Device is using VGA driver if service name starts with 'VGA' (case 
insensitive) */
-    return (_wcsnicmp(awcServiceName, L"VGA", 3) == 0);
+    /* Device is using VGA driver if service name is 'VGASave' (case 
insensitive) */
+    return (_wcsicmp(awcServiceName, L"VGASave") == 0);
 }
 
 /*
@@ -242,7 +242,7 @@ EngpUpdateGraphicsDeviceList(VOID)
         if (pGraphicsDevice->StateFlags & DISPLAY_DEVICE_VGA_COMPATIBLE)
         {
             /* Save this as the VGA adapter */
-            if (!gpVgaGraphicsDevice)
+            if (!gpVgaGraphicsDevice || !EngpHasVgaDriver(gpVgaGraphicsDevice))
             {
                 gpVgaGraphicsDevice = pGraphicsDevice;
                 TRACE("gpVgaGraphicsDevice = %p\n", gpVgaGraphicsDevice);

Reply via email to