summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAapo Tahkola <aet@rasterburn.org>2005-05-14 16:52:32 +0000
committerAapo Tahkola <aet@rasterburn.org>2005-05-14 16:52:32 +0000
commitd5084d42d4b91b5f5c368673d95f729b5cbb590f (patch)
tree3a3f49bf9dd23b936042b36678fe473310f4ebfd /src
parent578f63f2bfac3481eece30a484cb963a9f987a19 (diff)
Dont assume GLbooleans are ones when true.
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/r300/r300_state.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_state.c b/src/mesa/drivers/dri/r300/r300_state.c
index 7d1835f2e7..1607756096 100644
--- a/src/mesa/drivers/dri/r300/r300_state.c
+++ b/src/mesa/drivers/dri/r300/r300_state.c
@@ -608,7 +608,10 @@ static void r300ColorMask(GLcontext* ctx,
GLboolean r, GLboolean g, GLboolean b, GLboolean a)
{
r300ContextPtr r300 = R300_CONTEXT(ctx);
- int mask = (b << 0) | (g << 1) | (r << 2) | (a << 3);
+ int mask = (r ? R300_COLORMASK0_R : 0) |
+ (g ? R300_COLORMASK0_G : 0) |
+ (b ? R300_COLORMASK0_B : 0) |
+ (a ? R300_COLORMASK0_A : 0);
if (mask != r300->hw.cmk.cmd[R300_CMK_COLORMASK]) {
R300_STATECHANGE(r300, cmk);