mesa: fix infinite loop bug in _mesa_drawbuffers()
authorBrian Paul <brianp@vmware.com>
Thu, 5 Nov 2009 20:16:19 +0000 (13:16 -0700)
committerBrian Paul <brianp@vmware.com>
Thu, 5 Nov 2009 20:17:21 +0000 (13:17 -0700)
Fixes bug 24946.
This regression came from 8df699b3bb1aa05b633f05b121d09d812c86a22d.

src/mesa/main/buffers.c

index e76cf87cb02d55771772e06ce6a0f6e932922f8e..7f77c5d7726a43a19635a5d2afae602bced17945 100644 (file)
@@ -424,9 +424,10 @@ _mesa_drawbuffers(GLcontext *ctx, GLuint n, const GLenum *buffers,
       while (buf < ctx->Const.MaxDrawBuffers) {
          if (fb->_ColorDrawBufferIndexes[buf] != -1) {
             fb->_ColorDrawBufferIndexes[buf] = -1;
-            buf++;
+            newState = GL_TRUE;
          }
          fb->ColorDrawBuffer[buf] = GL_NONE;
+         buf++;
       }
       fb->_NumColorDrawBuffers = count;
    }