summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mesa/main/buffers.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/mesa/main/buffers.c b/src/mesa/main/buffers.c
index 20a1c2ee22f..f7edb1b855c 100644
--- a/src/mesa/main/buffers.c
+++ b/src/mesa/main/buffers.c
@@ -1,4 +1,4 @@
-/* $Id: buffers.c,v 1.38 2002/10/04 19:10:07 brianp Exp $ */
+/* $Id: buffers.c,v 1.39 2002/10/11 00:02:16 brianp Exp $ */
/*
* Mesa 3-D graphics library
@@ -144,10 +144,12 @@ _mesa_DrawBuffer( GLenum mode )
GET_CURRENT_CONTEXT(ctx);
ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx); /* too complex... */
-
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(ctx, "glDrawBuffer %s\n", _mesa_lookup_enum_by_nr(mode));
+ if (ctx->Color.DrawBuffer == mode)
+ return; /* no change */
+
/*
* Do error checking and compute the _DrawDestMask bitfield.
*/
@@ -262,6 +264,9 @@ _mesa_ReadBuffer( GLenum mode )
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(ctx, "glReadBuffer %s\n", _mesa_lookup_enum_by_nr(mode));
+ if (ctx->Pixel.ReadBuffer == mode)
+ return; /* no change */
+
switch (mode) {
case GL_AUX0:
case GL_AUX1: