diff options
-rw-r--r-- | src/gallium/state_trackers/wgl/stw_wgl.c | 6 | ||||
-rw-r--r-- | src/mesa/drivers/windows/gdi/wgl.c | 10 |
2 files changed, 11 insertions, 5 deletions
diff --git a/src/gallium/state_trackers/wgl/stw_wgl.c b/src/gallium/state_trackers/wgl/stw_wgl.c index 5fbb7bf7cfd..d38bfbefdd7 100644 --- a/src/gallium/state_trackers/wgl/stw_wgl.c +++ b/src/gallium/state_trackers/wgl/stw_wgl.c @@ -172,8 +172,10 @@ wglSetPixelFormat( int iPixelFormat, const PIXELFORMATDESCRIPTOR *ppfd ) { - if (ppfd->nSize != sizeof( PIXELFORMATDESCRIPTOR )) - return FALSE; + /* SetPixelFormat (hence wglSetPixelFormat) must not touch ppfd, per + * http://msdn.microsoft.com/en-us/library/dd369049(v=vs.85).aspx + */ + (void) ppfd; return DrvSetPixelFormat( hdc, iPixelFormat ); } diff --git a/src/mesa/drivers/windows/gdi/wgl.c b/src/mesa/drivers/windows/gdi/wgl.c index 33baabee63f..61850c26ffb 100644 --- a/src/mesa/drivers/windows/gdi/wgl.c +++ b/src/mesa/drivers/windows/gdi/wgl.c @@ -335,9 +335,13 @@ WINGDIAPI BOOL GLAPIENTRY wglSetPixelFormat(HDC hdc,int iPixelFormat, const PIXELFORMATDESCRIPTOR *ppfd) { (void) hdc; - - if(iPixelFormat < 1 || iPixelFormat > npfd || - ppfd->nSize != sizeof(PIXELFORMATDESCRIPTOR)) { + + /* SetPixelFormat (hence wglSetPixelFormat) must not touch ppfd, per + * http://msdn.microsoft.com/en-us/library/dd369049(v=vs.85).aspx + */ + (void) ppfd; + + if(iPixelFormat < 1 || iPixelFormat > npfd) { SetLastError(0); return(FALSE); } |