Mesa (master): vbo: fix incorrect switch statement in init_mat_currval()

Brian Paul brianp at kemper.freedesktop.org
Tue Oct 13 14:58:04 UTC 2015


Module: Mesa
Branch: master
Commit: dd293d8aae324ac7b9d5297e33a1e732e1f3f4d3
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=dd293d8aae324ac7b9d5297e33a1e732e1f3f4d3

Author: Brian Paul <brianp at vmware.com>
Date:   Mon Oct 12 11:32:35 2015 -0600

vbo: fix incorrect switch statement in init_mat_currval()

The variable 'i' is a value in [0, MAT_ATTRIB_MAX-1] so subtracting
VERT_ATTRIB_GENERIC0 gave a bogus value and we executed the default
switch clause for all loop iterations.

This doesn't fix any known issues but was clearly incorrect.

Cc: mesa-stable at lists.freedesktop.org

Reviewed-by: Marek Olšák <marek.olsak at amd.com>

---

 src/mesa/vbo/vbo_context.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/vbo/vbo_context.c b/src/mesa/vbo/vbo_context.c
index e3eb286..802955d 100644
--- a/src/mesa/vbo/vbo_context.c
+++ b/src/mesa/vbo/vbo_context.c
@@ -121,7 +121,7 @@ static void init_mat_currval(struct gl_context *ctx)
       /* Size is fixed for the material attributes, for others will
        * be determined at runtime:
        */
-      switch (i - VERT_ATTRIB_GENERIC0) {
+      switch (i) {
       case MAT_ATTRIB_FRONT_SHININESS:
       case MAT_ATTRIB_BACK_SHININESS:
 	 cl->Size = 1;




More information about the mesa-commit mailing list