console/libgnt/gntutils.c

changeset 13992
a6bbcc09c4eb
parent 13926
d2c1522276b3
--- a/console/libgnt/gntutils.c	Fri Jul 07 21:57:15 2006 +0000
+++ b/console/libgnt/gntutils.c	Sat Jul 08 02:11:11 2006 +0000
@@ -130,3 +130,39 @@
 			data2);
 }
 
+void gnt_closure_marshal_BOOLEAN__INT_INT(GClosure *closure,
+										GValue *ret_value,
+										guint n_param_values,
+										const GValue *param_values,
+										gpointer invocation_hint,
+										gpointer marshal_data)
+{
+	typedef gboolean (*func) (gpointer data1, int, int, gpointer data2);
+	register func callback;
+	register GCClosure *cc = (GCClosure*)closure;
+	register gpointer data1, data2;
+	gboolean ret;
+
+	g_return_if_fail(ret_value != NULL);
+	g_return_if_fail(n_param_values == 3);
+
+	if (G_CCLOSURE_SWAP_DATA(closure))
+	{
+		data1 = closure->data;
+		data2 = g_value_peek_pointer(param_values + 0);
+	}
+	else
+	{
+		data1 = g_value_peek_pointer(param_values + 0);
+		data2 = closure->data;
+	}
+
+	callback = (func) (marshal_data ? marshal_data : cc->callback);
+	ret = callback(data1,
+			g_value_get_int(param_values + 1) ,
+			g_value_get_int(param_values + 2) ,
+			data2);
+	g_value_set_boolean(ret_value, ret);
+}
+
+

mercurial