mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 13:58:04 +02:00
mesa/main: factor out common error-checking
This error checking is the same for teximage and texsubimage getters, so let's factor it out to its own function. This will be useful when getteximage and gettexsubimage gets their own error checking routines a bit later. Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
This commit is contained in:
parent
5e0a84f31c
commit
42820c5727
1 changed files with 34 additions and 12 deletions
|
|
@ -1211,24 +1211,20 @@ teximage_error_check(struct gl_context *ctx,
|
|||
|
||||
|
||||
/**
|
||||
* Do error checking for all (non-compressed) get-texture-image functions.
|
||||
* \return true if any error, false if no errors.
|
||||
* Do common teximage-related error checking for getting uncompressed images.
|
||||
* \return true if there was an error
|
||||
*/
|
||||
static bool
|
||||
getteximage_error_check(struct gl_context *ctx,
|
||||
struct gl_texture_object *texObj,
|
||||
GLenum target, GLint level,
|
||||
GLint xoffset, GLint yoffset, GLint zoffset,
|
||||
GLsizei width, GLsizei height, GLsizei depth,
|
||||
GLenum format, GLenum type, GLsizei bufSize,
|
||||
GLvoid *pixels, const char *caller)
|
||||
common_error_check(struct gl_context *ctx,
|
||||
struct gl_texture_object *texObj,
|
||||
GLenum target, GLint level,
|
||||
GLsizei width, GLsizei height, GLsizei depth,
|
||||
GLenum format, GLenum type, GLsizei bufSize,
|
||||
GLvoid *pixels, const char *caller)
|
||||
{
|
||||
struct gl_texture_image *texImage;
|
||||
GLenum err;
|
||||
GLint maxLevels;
|
||||
|
||||
assert(texObj);
|
||||
|
||||
if (texObj->Target == 0) {
|
||||
_mesa_error(ctx, GL_INVALID_OPERATION, "%s(invalid texture)", caller);
|
||||
return true;
|
||||
|
|
@ -1246,6 +1242,32 @@ getteximage_error_check(struct gl_context *ctx,
|
|||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Do error checking for all (non-compressed) get-texture-image functions.
|
||||
* \return true if any error, false if no errors.
|
||||
*/
|
||||
static bool
|
||||
getteximage_error_check(struct gl_context *ctx,
|
||||
struct gl_texture_object *texObj,
|
||||
GLenum target, GLint level,
|
||||
GLint xoffset, GLint yoffset, GLint zoffset,
|
||||
GLsizei width, GLsizei height, GLsizei depth,
|
||||
GLenum format, GLenum type, GLsizei bufSize,
|
||||
GLvoid *pixels, const char *caller)
|
||||
{
|
||||
struct gl_texture_image *texImage;
|
||||
|
||||
assert(texObj);
|
||||
|
||||
if (common_error_check(ctx, texObj, target, level, width, height, depth,
|
||||
format, type, bufSize, pixels, caller)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (dimensions_error_check(ctx, texObj, target, level,
|
||||
xoffset, yoffset, zoffset,
|
||||
width, height, depth, caller)) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue