mesa/meta: move BindTexture() call in _mesa_meta_GenerateMipmap()

This is a follow-up to commit e3fa700c17.

The call to _mesa_BindTexture() must be before we set any other texture
object state, namely the _mesa_TexParameteri() calls.

This fixes bug 25601 (piglit gen-nonzero-unit failure).
This commit is contained in:
Brian Paul 2009-12-14 13:35:56 -07:00
parent 48888b918b
commit 69346c56a1

View file

@ -2170,6 +2170,9 @@ _mesa_meta_GenerateMipmap(GLcontext *ctx, GLenum target,
_mesa_meta_begin(ctx, META_ALL);
if (original_active_unit != 0)
_mesa_BindTexture(target, texObj->Name);
if (mipmap->ArrayObj == 0) {
/* one-time setup */
@ -2289,9 +2292,6 @@ _mesa_meta_GenerateMipmap(GLcontext *ctx, GLenum target,
/* texture is already locked, unlock now */
_mesa_unlock_texture(ctx, texObj);
if (original_active_unit != 0)
_mesa_BindTexture(target, texObj->Name);
for (dstLevel = baseLevel + 1; dstLevel <= maxLevel; dstLevel++) {
const struct gl_texture_image *srcImage;
const GLuint srcLevel = dstLevel - 1;