#include "context.h"
#include "enums.h"
#include "macros.h"
-#include "shaderimage.h"
#include "texobj.h"
#include "teximage.h"
#include "texstate.h"
GLuint k;
GET_CURRENT_CONTEXT(ctx);
- k = _mesa_max_tex_unit(ctx);
-
- assert(k <= ARRAY_SIZE(ctx->Texture.Unit));
-
if (MESA_VERBOSE & (VERBOSE_API|VERBOSE_TEXTURE))
_mesa_debug(ctx, "glActiveTexture %s\n",
_mesa_enum_to_string(texture));
+ if (ctx->Texture.CurrentUnit == texUnit)
+ return;
+
+ k = _mesa_max_tex_unit(ctx);
+
+ assert(k <= ARRAY_SIZE(ctx->Texture.Unit));
+
if (texUnit >= k) {
_mesa_error(ctx, GL_INVALID_ENUM, "glActiveTexture(texture=%s)",
_mesa_enum_to_string(texture));
return;
}
- if (ctx->Texture.CurrentUnit == texUnit)
- return;
-
FLUSH_VERTICES(ctx, _NEW_TEXTURE);
ctx->Texture.CurrentUnit = texUnit;
_mesa_debug(ctx, "glClientActiveTexture %s\n",
_mesa_enum_to_string(texture));
- if (texUnit >= ctx->Const.MaxTextureCoordUnits) {
- _mesa_error(ctx, GL_INVALID_ENUM, "glClientActiveTexture(texture)");
+ if (ctx->Array.ActiveTexture == texUnit)
return;
- }
- if (ctx->Array.ActiveTexture == texUnit)
+ if (texUnit >= ctx->Const.MaxTextureCoordUnits) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "glClientActiveTexture(texture=%s)",
+ _mesa_enum_to_string(texture));
return;
+ }
FLUSH_VERTICES(ctx, _NEW_ARRAY);
ctx->Array.ActiveTexture = texUnit;
if (!prog[MESA_SHADER_FRAGMENT] || !prog[MESA_SHADER_VERTEX])
update_texgen(ctx);
-
- _mesa_validate_image_units(ctx);
}
GL_TEXTURE_2D_ARRAY_EXT,
GL_TEXTURE_1D_ARRAY_EXT,
GL_TEXTURE_EXTERNAL_OES,
- GL_TEXTURE_CUBE_MAP_ARB,
+ GL_TEXTURE_CUBE_MAP,
GL_TEXTURE_3D,
GL_TEXTURE_RECTANGLE_NV,
GL_TEXTURE_2D,