mesa: Fix array out-of-bounds access by _mesa_TexParameterf.
authorVinson Lee <vlee@vmware.com>
Mon, 30 Nov 2009 02:17:44 +0000 (21:17 -0500)
committerVinson Lee <vlee@vmware.com>
Mon, 30 Nov 2009 02:17:44 +0000 (21:17 -0500)
_mesa_TexParameterf calls set_tex_parameterf, which uses the params
argument as an array.

src/mesa/main/texparam.c

index 032c22b252018d3bc52b90887503e5695cf37619..310d594cd55517e4d420a8c4b042aaa260b598a4 100644 (file)
@@ -554,8 +554,13 @@ _mesa_TexParameterf(GLenum target, GLenum pname, GLfloat param)
       }
       break;
    default:
-      /* this will generate an error if pname is illegal */
-      need_update = set_tex_parameterf(ctx, texObj, pname, &param);
+      {
+         /* this will generate an error if pname is illegal */
+         GLfloat p[4];
+         p[0] = param;
+         p[1] = p[2] = p[3] = 0.0F;
+         need_update = set_tex_parameterf(ctx, texObj, pname, p);
+      }
    }
 
    if (ctx->Driver.TexParameter && need_update) {