diff options
author | Brian Paul <[email protected]> | 2006-02-24 17:58:48 +0000 |
---|---|---|
committer | Brian Paul <[email protected]> | 2006-02-24 17:58:48 +0000 |
commit | ee2339f67364f0dde4bb4f198c767585dd45a634 (patch) | |
tree | e45a774a64fc5548029dd9018a4dbaa26f6ccd30 /src/mesa | |
parent | 228d4a6de74fa7ca5d1b7a70b9186a89cd61e06d (diff) |
need to check for _NEW_BUFFERS in xmesa_update_state()
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/x11/xm_dd.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/mesa/drivers/x11/xm_dd.c b/src/mesa/drivers/x11/xm_dd.c index 7a519335cc3..9c0771e6cdb 100644 --- a/src/mesa/drivers/x11/xm_dd.c +++ b/src/mesa/drivers/x11/xm_dd.c @@ -2,7 +2,7 @@ * Mesa 3-D graphics library * Version: 6.5 * - * Copyright (C) 1999-2005 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -988,28 +988,24 @@ xmesa_update_state( GLcontext *ctx, GLbitfield new_state ) return; /* - * GL_DITHER and GL_READ/DRAW_BUFFER state effect renderbuffer funcs + * GL_DITHER, GL_READ/DRAW_BUFFER, buffer binding state, etc. effect + * renderbuffer span/clear funcs. */ - if (new_state & (_NEW_COLOR | _NEW_PIXEL)) { + if (new_state & (_NEW_COLOR | _NEW_PIXEL | _NEW_BUFFERS)) { struct xmesa_renderbuffer *front_xrb, *back_xrb; front_xrb = XMESA_BUFFER(ctx->DrawBuffer)->frontxrb; if (front_xrb) { - /* XXX check for relevant new_state flags */ xmesa_set_renderbuffer_funcs(front_xrb, xmesa->pixelformat, xmesa->xm_visual->BitsPerPixel); - /* setup pointers to front and back buffer clear functions */ front_xrb->clearFunc = clear_pixmap; } back_xrb = XMESA_BUFFER(ctx->DrawBuffer)->backxrb; if (back_xrb) { XMesaBuffer xmbuf = XMESA_BUFFER(ctx->DrawBuffer); - - /* XXX check for relevant new_state flags */ xmesa_set_renderbuffer_funcs(back_xrb, xmesa->pixelformat, xmesa->xm_visual->BitsPerPixel); - if (xmbuf->backxrb->pixmap) { back_xrb->clearFunc = clear_pixmap; } |