diff options
author | Ian Romanick <idr@us.ibm.com> | 2006-11-14 00:10:34 +0000 |
---|---|---|
committer | Ian Romanick <idr@us.ibm.com> | 2006-11-14 00:10:34 +0000 |
commit | efa91b9a8f39dd49a59e4fc5524657f7cd5ae8ac (patch) | |
tree | 16f3a5afa3d2763ea7b29b26f9af24c1c78f5b78 /src/mesa/drivers/dri/tdfx/tdfx_context.c | |
parent | 0b69e4837ebf795ba0dbd56d610fc3bd94363f34 (diff) |
Enable GLX_SGI_make_current_read for tdfx.
Implement GLX_SGI_make_current_read for tdfx. Remove annoying debug
printf in tdfxSwapBuffers. Updated a comment in drirenderbuffer.h to
note that the tdfx driver uses a flag that was previously only used by
s3v.
This code was tested with glxgears, wincopy, and manywin.
Diffstat (limited to 'src/mesa/drivers/dri/tdfx/tdfx_context.c')
-rw-r--r-- | src/mesa/drivers/dri/tdfx/tdfx_context.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/tdfx/tdfx_context.c b/src/mesa/drivers/dri/tdfx/tdfx_context.c index e9c07bd862..bd9dade89b 100644 --- a/src/mesa/drivers/dri/tdfx/tdfx_context.c +++ b/src/mesa/drivers/dri/tdfx/tdfx_context.c @@ -657,8 +657,10 @@ tdfxMakeCurrent( __DRIcontextPrivate *driContextPriv, GLcontext *newCtx = newFx->glCtx; GET_CURRENT_CONTEXT(curCtx); - if ( newFx->driDrawable != driDrawPriv ) { + if ((newFx->driDrawable != driDrawPriv) + || (newFx->driReadable != driReadPriv)) { newFx->driDrawable = driDrawPriv; + newFx->driReadable = driReadPriv; newFx->dirty = ~0; } else { @@ -676,6 +678,11 @@ tdfxMakeCurrent( __DRIcontextPrivate *driContextPriv, newFx->dirty = ~0; } + driUpdateFramebufferSize(newCtx, driDrawPriv); + if (driDrawPriv != driReadPriv) { + driUpdateFramebufferSize(newCtx, driReadPriv); + } + if ( !newFx->Glide.Initialized ) { if ( !tdfxInitContext( driDrawPriv, newFx ) ) return GL_FALSE; @@ -700,7 +707,6 @@ tdfxMakeCurrent( __DRIcontextPrivate *driContextPriv, UNLOCK_HARDWARE( newFx ); } - driUpdateFramebufferSize(newCtx, driDrawPriv); _mesa_make_current( newCtx, (GLframebuffer *) driDrawPriv->driverPrivate, (GLframebuffer *) driReadPriv->driverPrivate ); |