On 11/11/2011 11:31 AM, Eric Anholt wrote:
It's unlikely that we changed the object but no other texture parameter, but be correct anyway. Noticed by inspection. --- src/mesa/drivers/common/meta.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-)diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index 8d589e4..f9b582d 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -879,8 +879,11 @@ _mesa_meta_end(struct gl_context *ctx) /* restore texture objects for unit[0] only */ for (tgt = 0; tgt< NUM_TEXTURE_TARGETS; tgt++) { - _mesa_reference_texobj(&ctx->Texture.Unit[0].CurrentTex[tgt], - save->CurrentTexture[tgt]); + if (ctx->Texture.Unit[0].CurrentTex[tgt] != save->CurrentTexture[tgt]) { + FLUSH_VERTICES(ctx, _NEW_TEXTURE); + _mesa_reference_texobj(&ctx->Texture.Unit[0].CurrentTex[tgt], + save->CurrentTexture[tgt]); + } _mesa_reference_texobj(&save->CurrentTexture[tgt], NULL); }
Reviewed-by: Brian Paul <[email protected]> _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
