material: set ->layer_index on new layers for unit0

We were mistakenly only initializing layer->layer_index for new layers
associated with texture units > 0. This had gone unnoticed because
normally layers associated with texture unit0 have a layer index of 0
too. Mutter was hitting this issue because it was initializing layer 1
before layer 0 for one of its materials so layer 1 was temporarily
associated with texture unit 0.
This commit is contained in:
Robert Bragg 2010-07-07 19:23:57 +01:00
parent 9e730727ca
commit 7eedf0f234

View File

@ -1841,8 +1841,8 @@ _cogl_material_get_layer (CoglMaterial *material,
/* Since we passed a newly allocated layer we wouldn't expect /* Since we passed a newly allocated layer we wouldn't expect
* _set_layer_unit() to have to allocate *another* layer. */ * _set_layer_unit() to have to allocate *another* layer. */
g_assert (new == layer); g_assert (new == layer);
layer->index = layer_index;
} }
layer->index = layer_index;
for (i = 0; i < layer_info.n_layers_to_shift; i++) for (i = 0; i < layer_info.n_layers_to_shift; i++)
{ {