tgsi: fix mixed data type comparison in tgsi_point_sprite.c
authorCharmaine Lee <charmainel@vmware.com>
Fri, 3 Jun 2016 21:26:23 +0000 (14:26 -0700)
committerBrian Paul <brianp@vmware.com>
Mon, 6 Jun 2016 16:20:45 +0000 (10:20 -0600)
commit627e975896e0ec1b058c6acc071fdaecbb055ce6
tree2ce47da3a33bf1d9c150c702b96a48437f0477f1
parent304b5a14461ffd2d09cd3ba719da1c7b76966a9c
tgsi: fix mixed data type comparison in tgsi_point_sprite.c

Cast the unsigned semantic index to integer datatype before comparing
to max_generic, otherwise, max_generic which is initialized to -1
will be converted to unsigned int before the comparison, causing a wrong
semantic index to be assigned to a shader output.

Fixes the assert running TurboCAD_gl.trace. (VMware bug 1667265)

Also tested with glretrace, mesa demos pointblast, spriteblast and pointcoord.

v2: use the original max_generic variable but add the (int) cast
    to the semantic index, as suggested by Brian.

Reviewed-by: Brian Paul <brianp@vmware.com>
src/gallium/auxiliary/tgsi/tgsi_point_sprite.c