summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2009-02-11 16:50:19 +1000
committerDave Airlie <airlied@redhat.com>2009-02-11 16:50:19 +1000
commit832446c892caa0656f9d903c42c4e05fae44ef3d (patch)
tree68178351f7edb49bcd67370d1f710e3beded4940
parentc5d9a7ab3034b90614689f223b94ac81b8a84338 (diff)
r300: fix front buffer rendering properly fixes tests in glean
-rw-r--r--src/mesa/drivers/dri/r300/r300_state.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_state.c b/src/mesa/drivers/dri/r300/r300_state.c
index e5939afeeb..bdb67a1afd 100644
--- a/src/mesa/drivers/dri/r300/r300_state.c
+++ b/src/mesa/drivers/dri/r300/r300_state.c
@@ -2740,6 +2740,27 @@ void r300UpdateClipPlanes( GLcontext *ctx )
}
}
+static void r300DrawBuffer( GLcontext *ctx, GLenum mode )
+{
+ r300ContextPtr rmesa = R300_CONTEXT(ctx);
+ if (RADEON_DEBUG & DEBUG_DRI)
+ fprintf(stderr, "%s %s\n", __FUNCTION__,
+ _mesa_lookup_enum_by_nr( mode ));
+
+ R300_FIREVERTICES(rmesa); /* don't pipeline cliprect changes */
+
+ radeonSetCliprects( &rmesa->radeon );
+ radeonUpdatePageFlipping(&rmesa->radeon);
+}
+
+static void r300ReadBuffer( GLcontext *ctx, GLenum mode )
+{
+ if (RADEON_DEBUG & DEBUG_DRI)
+ fprintf(stderr, "%s %s\n", __FUNCTION__,
+ _mesa_lookup_enum_by_nr( mode ));
+
+};
+
/**
* Initialize driver's state callback functions
*/
@@ -2782,4 +2803,7 @@ void r300InitStateFuncs(struct dd_function_table *functions)
functions->RenderMode = r300RenderMode;
functions->ClipPlane = r300ClipPlane;
+
+ functions->DrawBuffer = r300DrawBuffer;
+ functions->ReadBuffer = r300ReadBuffer;
}