summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2012-11-04 16:43:44 -0700
committerBrian Paul <brianp@vmware.com>2012-11-06 07:42:37 -0700
commit0d61f879a1f2e6bb37368731a29d5267e1c25195 (patch)
treef107d7a0c05ba457b64d1ce07fe77f729fe7adac
parent406df38a6673cb7d19ce652f71fac1047b2279d0 (diff)
downloadmesa-0d61f879a1f2e6bb37368731a29d5267e1c25195.tar.gz
mesa: assert that key->fragprog_inputs_read value isn't too large
fragprog_inputs_read is a 12-bit bitfield so check the assigned value. MSVC warns on the assignment. Not easy to fix but let's do a sanity check. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
-rw-r--r--src/mesa/main/ffvertex_prog.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/mesa/main/ffvertex_prog.c b/src/mesa/main/ffvertex_prog.c
index efdca015e99..4cdec216696 100644
--- a/src/mesa/main/ffvertex_prog.c
+++ b/src/mesa/main/ffvertex_prog.c
@@ -160,6 +160,8 @@ static void make_state_key( struct gl_context *ctx, struct state_key *key )
key->need_eye_coords = ctx->_NeedEyeCoords;
+ /* Make sure fp->Base.InputsRead fits in a 12-bit field */
+ assert(fp->Base.InputsRead < (1 << 12));
key->fragprog_inputs_read = fp->Base.InputsRead;
key->varying_vp_inputs = ctx->varying_vp_inputs;