ChangeSet ID: 21325
CVSROOT: /opt/cvs-commit
Module name: wine
Changes by: julliard(a)winehq.org 2005/11/18 06:06:45
Modified files:
dlls/x11drv : opengl.c
Log message:
Peter Beutner <p.beutner(a)gmx.net>
Fix wrong use of the PFD_GENERIC_ACCELERATED flag. It indicates that
the selected pixel format lacks full hardware acceleration and only a
few parts are accelerated. So don't always set it but only if the X
server actually reports that the selected pixel format is not fully
accelerated.
Patch: http://cvs.winehq.org/patch.py?id=21325
Old revision New revision Changes Path
1.17 1.18 +6 -2 wine/dlls/x11drv/opengl.c
Index: wine/dlls/x11drv/opengl.c
diff -u -p wine/dlls/x11drv/opengl.c:1.17 wine/dlls/x11drv/opengl.c:1.18
--- wine/dlls/x11drv/opengl.c:1.17 18 Nov 2005 12: 6:45 -0000
+++ wine/dlls/x11drv/opengl.c 18 Nov 2005 12: 6:45 -0000
@@ -358,11 +358,15 @@ int X11DRV_DescribePixelFormat(X11DRV_PD
ppfd->nVersion = 1;
/* These flags are always the same... */
- ppfd->dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL | PFD_GENERIC_ACCELERATED;
- /* Now the flags extraced from the Visual */
+ ppfd->dwFlags = PFD_DRAW_TO_WINDOW | PFD_SUPPORT_OPENGL;
+ /* Now the flags extracted from the Visual */
wine_tsx11_lock();
+ pglXGetFBConfigAttrib(gdi_display, cur, GLX_CONFIG_CAVEAT, &value);
+ if(value == GLX_SLOW_CONFIG)
+ ppfd->dwFlags |= PFD_GENERIC_ACCELERATED;
+
pglXGetFBConfigAttrib(gdi_display, cur, GLX_DOUBLEBUFFER, &value); if (value) ppfd->dwFlags |= PFD_DOUBLEBUFFER;
pglXGetFBConfigAttrib(gdi_display, cur, GLX_STEREO, &value); if (value) ppfd->dwFlags |= PFD_STEREO;