[clutter] patch: add a safety catch to the ClutterValue shotgun

2010-06-16 Thread Richard Hughes
Please review. Thanks.

Richard.
From dce6b3a862d34dceb700afee6d7863e26b4f0080 Mon Sep 17 00:00:00 2001
From: Richard Hughes rich...@hughsie.com
Date: Wed, 16 Jun 2010 16:19:48 +0100
Subject: [PATCH] Emit a critical error if the user tries to send more data than the static shader GValues can hold

This fixes the random memory corruption you get when specifying size  4
---
 clutter/clutter-shader-types.c |3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/clutter/clutter-shader-types.c b/clutter/clutter-shader-types.c
index 2c35cb8..9ed3998 100644
--- a/clutter/clutter-shader-types.c
+++ b/clutter/clutter-shader-types.c
@@ -399,6 +399,7 @@ clutter_value_set_shader_float (GValue *value,
   gint i;
 
   g_return_if_fail (CLUTTER_VALUE_HOLDS_SHADER_FLOAT (value));
+  g_return_if_fail (size = 4);
 
   shader_float = value-data[0].v_pointer;
 
@@ -428,6 +429,7 @@ clutter_value_set_shader_int (GValue *value,
   gint i;
 
   g_return_if_fail (CLUTTER_VALUE_HOLDS_SHADER_INT (value));
+  g_return_if_fail (size = 4);
 
   shader_int = value-data[0].v_pointer;
 
@@ -457,6 +459,7 @@ clutter_value_set_shader_matrix (GValue   *value,
   gint i;
 
   g_return_if_fail (CLUTTER_VALUE_HOLDS_SHADER_MATRIX (value));
+  g_return_if_fail (size = 4);
 
   shader_matrix = value-data[0].v_pointer;
 
-- 
1.7.1



Re: [clutter] patch: add a safety catch to the ClutterValue shotgun

2010-06-16 Thread Emmanuele Bassi
On Wed, 2010-06-16 at 16:22 +0100, Richard Hughes wrote:
 Please review. Thanks.

looks good. applied to master.

ciao,
 Emmanuele.

-- 
Emmanuele Bassi, Open Source Software Engineer
Intel Open Source Technology Center

-- 
To unsubscribe send a mail to clutter+unsubscr...@o-hand.com