r300g: fix corruption when nr_cbufs==0 and multiwrites enabled

https://bugs.freedesktop.org/show_bug.cgi?id=32634
This commit is contained in:
Marek Olšák
2011-01-06 19:02:12 +01:00
parent 6125cbe983
commit c60f1d8b00

View File

@@ -380,7 +380,8 @@ void r300_emit_fb_state(struct r300_context* r300, unsigned size, void* state)
if (r300->screen->caps.is_r500) {
rb3d_cctl = R300_RB3D_CCTL_INDEPENDENT_COLORFORMAT_ENABLE_ENABLE;
}
if (r300_fragment_shader_writes_all(r300_fs(r300))) {
if (fb->nr_cbufs &&
r300_fragment_shader_writes_all(r300_fs(r300))) {
rb3d_cctl |= R300_RB3D_CCTL_NUM_MULTIWRITES(fb->nr_cbufs);
}