[cogl-material] make _cogl_material_layer_free check for an invalid texture handle
authorRobert Bragg <robert@linux.intel.com>
Wed, 29 Apr 2009 18:49:09 +0000 (19:49 +0100)
committerRobert Bragg <robert@linux.intel.com>
Sat, 2 May 2009 03:12:25 +0000 (04:12 +0100)
It is valid in some situations to have a material layer with an invalid texture
handle (e.g. if you setup a texture combine mode before setting the texture)
and so _cogl_material_layer_free needs to check for a valid handle before
attempting to unref it.

clutter/cogl/common/cogl-material.c

index 699ea0a..2c7df33 100644 (file)
@@ -644,7 +644,8 @@ cogl_material_set_layer_matrix (CoglHandle material_handle,
 static void
 _cogl_material_layer_free (CoglMaterialLayer *layer)
 {
-  cogl_handle_unref (layer->texture);
+  if (layer->texture != COGL_INVALID_HANDLE)
+    cogl_handle_unref (layer->texture);
   g_free (layer);
 }