From 9d52243790aa460c228bdcf7ee8e28f78ecd7b13 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Sun, 1 Jan 2012 21:51:40 +0100 Subject: [PATCH] values: Use v_pointer for g_value_set_gtype() ... and g_value_get_gtype(). G_TYPE_GTYPE is a pointer type, so it's values should use the v_pointer member. This is especially true, because the value collectors from varargs in gvaluecollector.h use that, too. This should only cause issues when sizeof(glong) != sizeof(gpointer), and I'm not aware of any such platform. Maybe win64? --- gobject/gvaluetypes.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gobject/gvaluetypes.c b/gobject/gvaluetypes.c index 5636990..799dfdd 100644 --- a/gobject/gvaluetypes.c +++ b/gobject/gvaluetypes.c @@ -1187,7 +1187,7 @@ g_value_set_gtype (GValue *value, { g_return_if_fail (G_VALUE_HOLDS_GTYPE (value)); - value->data[0].v_long = v_gtype; + value->data[0].v_pointer = GSIZE_TO_POINTER (v_gtype); } @@ -1206,7 +1206,7 @@ g_value_get_gtype (const GValue *value) { g_return_val_if_fail (G_VALUE_HOLDS_GTYPE (value), 0); - return value->data[0].v_long; + return GPOINTER_TO_SIZE (value->data[0].v_pointer); } /** -- 2.7.4