summaryrefslogtreecommitdiff
path: root/src/mesa/main/fbobject.c
diff options
context:
space:
mode:
authorRoland Scheidegger <sroland@tungstengraphics.com>2007-07-18 18:07:12 +0200
committerRoland Scheidegger <sroland@tungstengraphics.com>2007-07-18 18:07:12 +0200
commit3f318c2eb98cf7216ae7033806fa764ac40192bf (patch)
tree5f7d2901e0651966409f9034100dd719263cbb41 /src/mesa/main/fbobject.c
parentccb713cdb8831617880ac71ac357361b586d05c6 (diff)
more fixes for mesa's fbo handling (fixes tests/fbotest1/2)
Diffstat (limited to 'src/mesa/main/fbobject.c')
-rw-r--r--src/mesa/main/fbobject.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c
index 5345310ca1..f300e481ce 100644
--- a/src/mesa/main/fbobject.c
+++ b/src/mesa/main/fbobject.c
@@ -1003,13 +1003,20 @@ _mesa_BindFramebufferEXT(GLenum target, GLuint framebuffer)
if (bindReadBuf) {
_mesa_reference_framebuffer(&ctx->ReadBuffer, newFbread);
+ /* set context value */
+ ctx->Pixel.ReadBuffer = newFbread->ColorReadBuffer;
}
if (bindDrawBuf) {
+ GLuint i;
/* check if old FB had any texture attachments */
check_end_texture_render(ctx, ctx->DrawBuffer);
/* check if time to delete this framebuffer */
_mesa_reference_framebuffer(&ctx->DrawBuffer, newFb);
+ /* set context value */
+ for (i = 0; i < ctx->Const.MaxDrawBuffers; i++) {
+ ctx->Color.DrawBuffer[i] = newFb->ColorDrawBuffer[i];
+ }
if (newFb->Name != 0) {
/* check if newly bound framebuffer has any texture attachments */
check_begin_texture_render(ctx, newFb);