mesa: Fix setup of ctx->Point.PointSprite for GLES2.
authorEric Anholt <eric@anholt.net>
Wed, 20 Feb 2013 20:58:47 +0000 (12:58 -0800)
committerEric Anholt <eric@anholt.net>
Fri, 22 Feb 2013 18:55:39 +0000 (10:55 -0800)
The recent change for GL core broke the older setup, which broke
gl_PointCoord on pre-gen6 (where gl_PointCoord is undefined if point
sprites are disabled).  Fixes the new piglit GLES-2.0/glsl-fs-pointcoord
test.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=32429
Note: This is a candidate for the stable branches.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/main/context.c
src/mesa/main/points.c

index e5ed97f00aabb79681b9813bece505f113da2764..02acfc2aa5b99a9f0289fbe45c5034bb5f36ad0e 100644 (file)
@@ -1073,7 +1073,6 @@ _mesa_initialize_context(struct gl_context *ctx,
    case API_OPENGLES2:
       ctx->FragmentProgram._MaintainTexEnvProgram = GL_TRUE;
       ctx->VertexProgram._MaintainTnlProgram = GL_TRUE;
-      ctx->Point.PointSprite = GL_TRUE;  /* always on for ES 2.x */
       break;
    }
 
index 17786408c16df8bbdb1392b480d339dfafb12429..c925d4cfd0c416dcd0f0b6f27c3208f20dba4405 100644 (file)
@@ -253,7 +253,8 @@ _mesa_init_point(struct gl_context *ctx)
     * In a core context, the state will default to true, and the setters and
     * getters are disabled.
     */
-   ctx->Point.PointSprite = (ctx->API == API_OPENGL_CORE);
+   ctx->Point.PointSprite = (ctx->API == API_OPENGL_CORE ||
+                             ctx->API == API_OPENGLES2);
 
    ctx->Point.SpriteRMode = GL_ZERO; /* GL_NV_point_sprite (only!) */
    ctx->Point.SpriteOrigin = GL_UPPER_LEFT; /* GL_ARB_point_sprite */