summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300/r300_emit.c
diff options
context:
space:
mode:
authorCorbin Simpson <[email protected]>2009-03-06 14:13:21 -0800
committerCorbin Simpson <[email protected]>2009-03-06 19:07:53 -0800
commite23e93b7b400d1a4c7049b6f22f39cc7148a97f7 (patch)
treed56e74ec20958fae4ec66d3fd3a736afd1a3a341 /src/gallium/drivers/r300/r300_emit.c
parentfc96ac3c047da0ad7a44a7c938e6dcba8cdd01bd (diff)
r300-gallium: Actually do framebuffer setup.
Can't believe this wasn't wired up.
Diffstat (limited to 'src/gallium/drivers/r300/r300_emit.c')
-rw-r--r--src/gallium/drivers/r300/r300_emit.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c
index 86325f675be..4e82c322df1 100644
--- a/src/gallium/drivers/r300/r300_emit.c
+++ b/src/gallium/drivers/r300/r300_emit.c
@@ -152,7 +152,7 @@ uint32_t translate_out_fmt(enum pipe_format format)
return 0;
}
-/* XXX add pitch, stride */
+/* XXX add pitch, stride, clean up */
void r300_emit_fb_state(struct r300_context* r300,
struct pipe_framebuffer_state* fb)
{
@@ -324,6 +324,11 @@ void r300_emit_dirty_state(struct r300_context* r300)
r300->dirty_state &= ~R300_NEW_FRAGMENT_SHADER;
}
+ if (r300->dirty_state & R300_NEW_FRAMEBUFFERS) {
+ r300_emit_fb_state(r300, &r300->framebuffer_state);
+ r300->dirty_state &= ~R300_NEW_FRAMEBUFFERS;
+ }
+
if (r300->dirty_state & R300_NEW_RASTERIZER) {
r300_emit_rs_state(r300, r300->rs_state);
r300->dirty_state &= ~R300_NEW_RASTERIZER;