On Tue, Aug 21, 2012 at 5:09 PM, Ian Romanick <i...@freedesktop.org> wrote: > From: Ian Romanick <ian.d.roman...@intel.com> > > Previously you could always glGetProgramiv one of the transform feedback or > geometry shader enums even if the extension wasn't supported. > > In addtion, this reverts part of bda6ad27. I think the hunks involving > GL_PROGRAM_BINARY_LENGTH_OES were spurious. Mesa has no support for any other > part of GL_OES_get_program_binary. > > Signed-off-by: Ian Romanick <ian.d.roman...@intel.com> > Cc: Brian Paul <bri...@vmware.com> > --- > src/mesa/main/shaderapi.c | 51 +++++++++++++++++++++++++++----------------- > 1 files changed, 31 insertions(+), 20 deletions(-) > > diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c > index caeb965..9ecd7c6 100644 > --- a/src/mesa/main/shaderapi.c > +++ b/src/mesa/main/shaderapi.c > @@ -481,28 +481,28 @@ get_programiv(struct gl_context *ctx, GLuint program, > GLenum pname, GLint *param > switch (pname) { > case GL_DELETE_STATUS: > *params = shProg->DeletePending; > - break; > + return; > case GL_LINK_STATUS: > *params = shProg->LinkStatus; > - break; > + return; > case GL_VALIDATE_STATUS: > *params = shProg->Validated; > - break; > + return; > case GL_INFO_LOG_LENGTH: > *params = shProg->InfoLog ? strlen(shProg->InfoLog) + 1 : 0; > - break; > + return; > case GL_ATTACHED_SHADERS: > *params = shProg->NumShaders; > - break; > + return; > case GL_ACTIVE_ATTRIBUTES: > *params = _mesa_count_active_attribs(shProg); > - break; > + return; > case GL_ACTIVE_ATTRIBUTE_MAX_LENGTH: > *params = _mesa_longest_attribute_name_length(shProg); > - break; > + return; > case GL_ACTIVE_UNIFORMS: > *params = shProg->NumUserUniformStorage; > - break; > + return; > case GL_ACTIVE_UNIFORM_MAX_LENGTH: { > unsigned i; > GLint max_len = 0; > @@ -517,32 +517,41 @@ get_programiv(struct gl_context *ctx, GLuint program, > GLenum pname, GLint *param > } > > *params = max_len; > - break; > + return; > } > - case GL_PROGRAM_BINARY_LENGTH_OES: > - *params = 0; > - break; > #if FEATURE_EXT_transform_feedback > case GL_TRANSFORM_FEEDBACK_VARYINGS: > + if (!ctx->Extensions.EXT_transform_feedback) > + break; > *params = shProg->TransformFeedback.NumVarying; > - break; > + return; > case GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH: > + if (!ctx->Extensions.EXT_transform_feedback) > + break; > *params = longest_feedback_varying_name(shProg) + 1; > - break; > + return; > case GL_TRANSFORM_FEEDBACK_BUFFER_MODE: > + if (!ctx->Extensions.EXT_transform_feedback) > + break; > *params = shProg->TransformFeedback.BufferMode; > - break; > + return; > #endif > #if FEATURE_ARB_geometry_shader4 > case GL_GEOMETRY_VERTICES_OUT_ARB: > + if (!ctx->Extensions.ARB_geometry_shader4) > + break; > *params = shProg->Geom.VerticesOut; > - break; > + return; > case GL_GEOMETRY_INPUT_TYPE_ARB: > + if (!ctx->Extensions.ARB_geometry_shader4) > + break; > *params = shProg->Geom.InputType; > - break; > + return; > case GL_GEOMETRY_OUTPUT_TYPE_ARB: > + if (!ctx->Extensions.ARB_geometry_shader4) > + break; > *params = shProg->Geom.OutputType; > - break; > + return; > #endif > case GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH: { > unsigned i; > @@ -574,9 +583,11 @@ get_programiv(struct gl_context *ctx, GLuint program, > GLenum pname, GLint *param > *params = shProg->NumUniformBlocks; > break; > default: > - _mesa_error(ctx, GL_INVALID_ENUM, "glGetProgramiv(pname)"); > - return; > + break; > } > + > + _mesa_error(ctx, GL_INVALID_ENUM, "glGetProgramiv(pname)"); > + return; > } > > > --
Last return is unnecessary. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev