[clutter] clutter-offscreen-effect: Allocate the cogl texture directly



commit 2f95de91c41b1cdcdc5ab319044f4102c2a6e775
Author: Adel Gadllah <adel gadllah gmail com>
Date:   Tue Jun 25 15:04:19 2013 +0200

    clutter-offscreen-effect: Allocate the cogl texture directly
    
    Cogl now lazy loads the textures so we cannot rely on getting NULL
    from cogl_texture_new_with_size so we have to allocate it by ourselves.
    
    https://bugzilla.redhat.com/show_bug.cgi?id=975171

 clutter/clutter-offscreen-effect.c |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)
---
diff --git a/clutter/clutter-offscreen-effect.c b/clutter/clutter-offscreen-effect.c
index 5092ce5..5c4af4a 100644
--- a/clutter/clutter-offscreen-effect.c
+++ b/clutter/clutter-offscreen-effect.c
@@ -139,9 +139,21 @@ clutter_offscreen_effect_real_create_texture (ClutterOffscreenEffect *effect,
                                               gfloat                  width,
                                               gfloat                  height)
 {
-  return cogl_texture_new_with_size (MAX (width, 1), MAX (height, 1),
-                                     COGL_TEXTURE_NO_SLICING,
-                                     COGL_PIXEL_FORMAT_RGBA_8888_PRE);
+  CoglError *error = NULL;
+  CoglHandle texture = cogl_texture_new_with_size (MAX (width, 1), MAX (height, 1),
+                                                   COGL_TEXTURE_NO_SLICING,
+                                                   COGL_PIXEL_FORMAT_RGBA_8888_PRE);
+
+  if (!cogl_texture_allocate (texture, &error))
+    {
+#if CLUTTER_ENABLE_DEBUG
+      g_warning ("Unable to allocate texture for offscreen effect: %s", error->message);
+#endif /* CLUTTER_ENABLE_DEBUG */
+      cogl_error_free (error);
+      return NULL;
+    }
+
+  return texture;
 }
 
 static gboolean


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]