mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-29 14:30:10 +01:00
getteximage: Return correct error value when texure object is not found
glGetTextureSubImage() and glGetCompressedTextureSubImage() are currently
returning INVALID_OPERATION error when the passed texture argument does not
correspond to an existing texture object. However, the error should be
INVALID_VALUE instead. From OpenGL 4.5 spec PDF, section '8.11. Texture
Queries', page 236:
"An INVALID_VALUE error is generated if texture is not the name of
an existing texture object."
Same wording applies to the compressed version.
The INVALID_OPERATION error is coming from the call to
_mesa_lookup_texture_err(). This patch uses _mesa_lookup_texture() instead
and emits the correct error in the caller.
Fixes: GL45-CTS.get_texture_sub_image.errors_test
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
parent
a9a517f530
commit
633c959fae
1 changed files with 4 additions and 2 deletions
|
|
@ -1459,9 +1459,10 @@ _mesa_GetTextureSubImage(GLuint texture, GLint level,
|
|||
GET_CURRENT_CONTEXT(ctx);
|
||||
static const char *caller = "glGetTextureSubImage";
|
||||
struct gl_texture_object *texObj =
|
||||
_mesa_lookup_texture_err(ctx, texture, caller);
|
||||
_mesa_lookup_texture(ctx, texture);
|
||||
|
||||
if (!texObj) {
|
||||
_mesa_error(ctx, GL_INVALID_VALUE, "%s(texture)", caller);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1775,8 +1776,9 @@ _mesa_GetCompressedTextureSubImage(GLuint texture, GLint level,
|
|||
static const char *caller = "glGetCompressedTextureImage";
|
||||
struct gl_texture_object *texObj;
|
||||
|
||||
texObj = _mesa_lookup_texture_err(ctx, texture, caller);
|
||||
texObj = _mesa_lookup_texture(ctx, texture);
|
||||
if (!texObj) {
|
||||
_mesa_error(ctx, GL_INVALID_VALUE, "%s(texture)", caller);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue