From 97fd2c368e96d5475cda8872f36fadc6f14ef0a4 Mon Sep 17 00:00:00 2001 From: Neil Roberts Date: Thu, 27 May 2010 14:51:44 +0100 Subject: [PATCH] cogl: Record new enabled arrays in _cogl_disable_other_texcoord_arrays When _cogl_disable_other_texcoord_arrays is called it disables the neccessary texcoord arrays and then removes the bits for the disabled arrays in ctx->texcoord_arrays_enabled. However none of the places that call the function then set any bits in ctx->texcoord_arrays_enabled so the arrays would never get marked and they would never get disabled again. This patch just changes it so that _cogl_disable_other_texcoord_arrays also sets the corresponding bits in ctx->texcoord_arrays_enabled. --- cogl/cogl-internal.h | 3 ++- cogl/cogl.c | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/cogl/cogl-internal.h b/cogl/cogl-internal.h index c650960b6..c4169beda 100644 --- a/cogl/cogl-internal.h +++ b/cogl/cogl-internal.h @@ -134,7 +134,8 @@ void _cogl_flush_face_winding (void); /* Disables the texcoord arrays that don't have a corresponding bit - set in the mask */ + set in the mask and sets ctx->texcoord_arrays_enabled to mask. Note + that it doesn't enable any extra texcoord arrays */ void _cogl_disable_other_texcoord_arrays (const CoglBitmask *mask); diff --git a/cogl/cogl.c b/cogl/cogl.c index eab2d12d9..41dfa53b7 100644 --- a/cogl/cogl.c +++ b/cogl/cogl.c @@ -790,6 +790,7 @@ _cogl_disable_other_texcoord_arrays (const CoglBitmask *mask) /* Update the mask of arrays that are enabled */ _cogl_bitmask_clear_bits (&ctx->texcoord_arrays_enabled, &ctx->texcoord_arrays_to_disable); + _cogl_bitmask_set_bits (&ctx->texcoord_arrays_enabled, mask); } void