On 01/20/2016 08:29 PM, Jason Ekstrand wrote: > > On Jan 20, 2016 6:20 PM, "Ian Romanick" <[email protected] > <mailto:[email protected]>> wrote: >> >> From: Ian Romanick <[email protected] > <mailto:[email protected]>> >> >> Add a big spec quotation justifying the error generated, which has >> changed over the GL versions. >> >> Signed-off-by: Ian Romanick <[email protected] > <mailto:[email protected]>> >> --- >> >> I intended to send this out with the other four, but I selected the >> wrong SHA from the list. >> >> src/mesa/main/texparam.c | 31 ++++++++++++++++++++++++------- >> 1 file changed, 24 insertions(+), 7 deletions(-) >> >> diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c >> index 89f286c..ee50b5a 100644 >> --- a/src/mesa/main/texparam.c >> +++ b/src/mesa/main/texparam.c >> @@ -369,8 +369,31 @@ set_tex_parameteri(struct gl_context *ctx, >> if (texObj->BaseLevel == params[0]) >> return GL_FALSE; >> >> + /* Section 8.10 (Texture Parameters) of the OpenGL 4.5 Core > Profile spec >> + * says: >> + * >> + * "An INVALID_OPERATION error is generated if the > effective target >> + * is either TEXTURE_2D_MULTISAMPLE or > TEXTURE_2D_MULTISAMPLE_ARRAY, >> + * and pname TEXTURE_BASE_LEVEL is set to a value other > than zero. >> + * >> + * ... >> + * >> + * An INVALID_OPERATION error is generated if the effective > target >> + * is TEXTURE_RECTANGLE and pname TEXTURE_BASE_LEVEL is set > to any >> + * value other than zero." > > Do we really need the "pname"s? IMHO, they make it harder to read.
I'm not sure what you mean. The pnames in the spec quote or ... ? > Other than that, the series looks good. > > Reviewed-by: Jason Ekstrand <[email protected] > <mailto:[email protected]>> > >> + * >> + * Note that section 3.8.8 (Texture Parameters) of the OpenGL > 3.3 Core >> + * Profile spec said: >> + * >> + * "The error INVALID_VALUE is generated if > TEXTURE_BASE_LEVEL is >> + * set to any value other than zero." >> + * >> + * We take the 4.5 language as a correction to the 3.3, and we > implement >> + * that on all GL versions. >> + */ >> if ((texObj->Target == GL_TEXTURE_2D_MULTISAMPLE || >> - texObj->Target == GL_TEXTURE_2D_MULTISAMPLE_ARRAY) && > params[0] != 0) >> + texObj->Target == GL_TEXTURE_2D_MULTISAMPLE_ARRAY || >> + texObj->Target == GL_TEXTURE_RECTANGLE) && params[0] != 0) >> goto invalid_operation; >> >> if (params[0] < 0) { >> @@ -378,12 +401,6 @@ set_tex_parameteri(struct gl_context *ctx, >> "glTex%sParameter(param=%d)", suffix, params[0]); >> return GL_FALSE; >> } >> - if (texObj->Target == GL_TEXTURE_RECTANGLE_ARB && params[0] != 0) { >> - _mesa_error(ctx, GL_INVALID_OPERATION, >> - "glTex%sParameter(target=%s, param=%d)", suffix, >> - _mesa_enum_to_string(texObj->Target), params[0]); >> - return GL_FALSE; >> - } >> incomplete(ctx, texObj); >> >> /** See note about ARB_texture_storage below */ >> -- >> 2.5.0 >> >> _______________________________________________ >> mesa-dev mailing list >> [email protected] <mailto:[email protected]> >> http://lists.freedesktop.org/mailman/listinfo/mesa-dev > _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
