Permalink
Browse files

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?
  • Loading branch information...
Benjamin Otte
Benjamin Otte committed Jan 1, 2012
1 parent 86cd301 commit 9d52243790aa460c228bdcf7ee8e28f78ecd7b13
Showing with 2 additions and 2 deletions.
  1. +2 −2 gobject/gvaluetypes.c
View
@@ -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);
}
/**

0 comments on commit 9d52243

Please sign in to comment.