summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_state_derived.c
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2010-01-17 04:49:07 +0100
committerCorbin Simpson <MostAwesomeDude@gmail.com>2010-01-17 01:10:58 -0800
commitb62d339301f32d29c0a0fdaba2a0e192bff42c23 (patch)
tree6b3ab9e6a28c81d348455148f4b270ff8e7494ce /src/gallium/drivers/r300/r300_state_derived.c
parent7d3090f0fe41757582729bb5a580ad5b9a03f765 (diff)
r300g: fix the rasterization of secondary color
When the secondary color is used, the primary color must always be rasterized regardless of whether it is used or not.
Diffstat (limited to 'src/gallium/drivers/r300/r300_state_derived.c')
-rw-r--r--src/gallium/drivers/r300/r300_state_derived.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_state_derived.c b/src/gallium/drivers/r300/r300_state_derived.c
index 192846411b..99c2720897 100644
--- a/src/gallium/drivers/r300/r300_state_derived.c
+++ b/src/gallium/drivers/r300/r300_state_derived.c
@@ -350,7 +350,8 @@ static void r300_update_rs_block(struct r300_context* r300,
/* Rasterize colors. */
for (i = 0; i < ATTR_COLOR_COUNT; i++) {
- if (vs_outputs->color[i] != ATTR_UNUSED || any_bcolor_used) {
+ if (vs_outputs->color[i] != ATTR_UNUSED || any_bcolor_used ||
+ vs_outputs->color[1] != ATTR_UNUSED) {
/* Always rasterize if it's written by the VS,
* otherwise it locks up. */
rX00_rs_col(rs, col_count, i, FALSE);