diff options
author | Michel Dänzer <michel@tungstengraphics.com> | 2007-08-01 18:13:18 +0200 |
---|---|---|
committer | Michel Dänzer <michel@tungstengraphics.com> | 2007-08-01 18:13:18 +0200 |
commit | 17cb4f64e3c39725e83b1e311c09422d7e1c0e52 (patch) | |
tree | b9d585423568e73ff9bc6f921ff73c610ddf1231 /GL/glx/glxcmdsswap.c | |
parent | a4197db9504adae6af005b2218eee36b8af0d98b (diff) |
GLX_EXT_texture_from_pixmap: Use client provided texture target when available.
This prevents situations where the server doesn't use the target the
client thinks it does, usually resulting in the texture being sampled as all
white.
Diffstat (limited to 'GL/glx/glxcmdsswap.c')
-rw-r--r-- | GL/glx/glxcmdsswap.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/GL/glx/glxcmdsswap.c b/GL/glx/glxcmdsswap.c index 1857bc1eb..12bc03037 100644 --- a/GL/glx/glxcmdsswap.c +++ b/GL/glx/glxcmdsswap.c @@ -266,7 +266,7 @@ int __glXDispSwap_CreateGLXPixmap(__GLXclientState *cl, GLbyte *pc) __GLX_SWAP_INT(&req->glxpixmap); return DoCreateGLXPixmap( cl, req->visual, req->screen, - req->pixmap, req->glxpixmap ); + req->pixmap, req->glxpixmap, NULL, 0 ); } int __glXDispSwap_CreatePixmap(__GLXclientState *cl, GLbyte *pc) @@ -279,9 +279,12 @@ int __glXDispSwap_CreatePixmap(__GLXclientState *cl, GLbyte *pc) __GLX_SWAP_INT(&req->fbconfig); __GLX_SWAP_INT(&req->pixmap); __GLX_SWAP_INT(&req->glxpixmap); + __GLX_SWAP_INT(&req->numAttribs); return DoCreateGLXPixmap( cl, req->fbconfig, req->screen, - req->pixmap, req->glxpixmap ); + req->pixmap, req->glxpixmap, + (CARD32*)(req + 1), + req->numAttribs ); } int __glXDispSwap_CreateGLXPixmapWithConfigSGIX(__GLXclientState *cl, GLbyte *pc) @@ -297,7 +300,7 @@ int __glXDispSwap_CreateGLXPixmapWithConfigSGIX(__GLXclientState *cl, GLbyte *pc __GLX_SWAP_INT(&req->glxpixmap); return DoCreateGLXPixmap( cl, req->fbconfig, req->screen, - req->pixmap, req->glxpixmap ); + req->pixmap, req->glxpixmap, NULL, 0 ); } int __glXDispSwap_DestroyGLXPixmap(__GLXclientState *cl, GLbyte *pc) |