Paul Gofman : opengl32: Prioritize stencil check over depth check in wglChoosePixelFormat().

Alexandre Julliard julliard at winehq.org
Wed Jun 22 16:12:09 CDT 2022


Module: wine
Branch: master
Commit: cc8d8b5ee33561e984d4abe4112ddd6324f77115
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=cc8d8b5ee33561e984d4abe4112ddd6324f77115

Author: Paul Gofman <pgofman at codeweavers.com>
Date:   Wed May 25 18:58:21 2022 -0500

opengl32: Prioritize stencil check over depth check in wglChoosePixelFormat().

Patch by Matteo Bruni.

Signed-off-by: Paul Gofman <pgofman at codeweavers.com>

---

 dlls/opengl32/wgl.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/dlls/opengl32/wgl.c b/dlls/opengl32/wgl.c
index bd7f7d22e98..49f1e4700b4 100644
--- a/dlls/opengl32/wgl.c
+++ b/dlls/opengl32/wgl.c
@@ -564,27 +564,27 @@ INT WINAPI wglChoosePixelFormat(HDC hdc, const PIXELFORMATDESCRIPTOR* ppfd)
                 continue;
             }
         }
-        if (ppfd->cDepthBits && !(ppfd->dwFlags & PFD_DEPTH_DONTCARE))
+        if (ppfd->cStencilBits)
         {
-            if (((ppfd->cDepthBits > best.cDepthBits) && (format.cDepthBits > best.cDepthBits)) ||
-                ((format.cDepthBits >= ppfd->cDepthBits) && (format.cDepthBits < best.cDepthBits)))
+            if (((ppfd->cStencilBits > best.cStencilBits) && (format.cStencilBits > best.cStencilBits)) ||
+                ((format.cStencilBits >= ppfd->cStencilBits) && (format.cStencilBits < best.cStencilBits)))
                 goto found;
 
-            if (best.cDepthBits != format.cDepthBits)
+            if (best.cStencilBits != format.cStencilBits)
             {
-                TRACE( "depth mismatch for iPixelFormat=%d\n", i );
+                TRACE( "stencil mismatch for iPixelFormat=%d\n", i );
                 continue;
             }
         }
-        if (ppfd->cStencilBits)
+        if (ppfd->cDepthBits && !(ppfd->dwFlags & PFD_DEPTH_DONTCARE))
         {
-            if (((ppfd->cStencilBits > best.cStencilBits) && (format.cStencilBits > best.cStencilBits)) ||
-                ((format.cStencilBits >= ppfd->cStencilBits) && (format.cStencilBits < best.cStencilBits)))
+            if (((ppfd->cDepthBits > best.cDepthBits) && (format.cDepthBits > best.cDepthBits)) ||
+                ((format.cDepthBits >= ppfd->cDepthBits) && (format.cDepthBits < best.cDepthBits)))
                 goto found;
 
-            if (best.cStencilBits != format.cStencilBits)
+            if (best.cDepthBits != format.cDepthBits)
             {
-                TRACE( "stencil mismatch for iPixelFormat=%d\n", i );
+                TRACE( "depth mismatch for iPixelFormat=%d\n", i );
                 continue;
             }
         }




More information about the wine-cvs mailing list