--- src/mesa/drivers/dri/i915/i830_vtbl.c | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-)
diff --git a/src/mesa/drivers/dri/i915/i830_vtbl.c b/src/mesa/drivers/dri/i915/i830_vtbl.c index 1d02c2c..67b4c96 100644 --- a/src/mesa/drivers/dri/i915/i830_vtbl.c +++ b/src/mesa/drivers/dri/i915/i830_vtbl.c @@ -720,7 +720,7 @@ i830_update_draw_buffer(struct intel_context *intel) { struct gl_context *ctx = &intel->ctx; struct gl_framebuffer *fb = ctx->DrawBuffer; - struct intel_region *colorRegions[MAX_DRAW_BUFFERS], *depthRegion = NULL; + struct intel_region *colorRegion, *depthRegion = NULL; struct intel_renderbuffer *irbDepth = NULL, *irbStencil = NULL; if (!fb) { @@ -759,16 +759,7 @@ i830_update_draw_buffer(struct intel_context *intel) || (fb->Height > ctx->Const.MaxRenderbufferSize) || (fb->_NumColorDrawBuffers == 0)) { /* writing to 0 */ - colorRegions[0] = NULL; - } - else if (fb->_NumColorDrawBuffers > 1) { - int i; - struct intel_renderbuffer *irb; - - for (i = 0; i < fb->_NumColorDrawBuffers; i++) { - irb = intel_renderbuffer(fb->_ColorDrawBuffers[i]); - colorRegions[i] = (irb && irb->mt) ? irb->mt->region : NULL; - } + colorRegion = NULL; } else { /* Get the intel_renderbuffer for the single colorbuffer we're drawing @@ -777,19 +768,19 @@ i830_update_draw_buffer(struct intel_context *intel) if (_mesa_is_winsys_fbo(fb)) { /* drawing to window system buffer */ if (fb->_ColorDrawBufferIndexes[0] == BUFFER_FRONT_LEFT) - colorRegions[0] = intel_get_rb_region(fb, BUFFER_FRONT_LEFT); + colorRegion = intel_get_rb_region(fb, BUFFER_FRONT_LEFT); else - colorRegions[0] = intel_get_rb_region(fb, BUFFER_BACK_LEFT); + colorRegion = intel_get_rb_region(fb, BUFFER_BACK_LEFT); } else { /* drawing to user-created FBO */ struct intel_renderbuffer *irb; irb = intel_renderbuffer(fb->_ColorDrawBuffers[0]); - colorRegions[0] = (irb && irb->mt->region) ? irb->mt->region : NULL; + colorRegion = (irb && irb->mt->region) ? irb->mt->region : NULL; } } - if (!colorRegions[0]) { + if (!colorRegion) { FALLBACK(intel, INTEL_FALLBACK_DRAW_BUFFER, true); } else { @@ -835,7 +826,7 @@ i830_update_draw_buffer(struct intel_context *intel) ctx->Driver.Enable(ctx, GL_STENCIL_TEST, (ctx->Stencil.Enabled && fb->Visual.stencilBits > 0)); - i830_set_draw_region(intel, colorRegions[0], depthRegion); + i830_set_draw_region(intel, colorRegion, depthRegion); intel->NewGLState |= _NEW_BUFFERS; /* update viewport since it depends on window size */ -- 1.7.10.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev