+2005-07-01 Colin Walters <walters@verbum.org>
+
+ Patch from Jonathan Matthew <jonathan@kaolin.hn.org>
+
+ * glib/dbus-gvalue.c (basic_typecode_to_gtype): Fix return type.
+ (dbus_g_value_types_init): Marshal G_TYPE_CHAR as DBUS_TYPE_BYTE,
+ G_TYPE_LONG as DBUS_TYPE_INT32, G_TYPE_ULONG as DBUS_TYPE_UINT32,
+ and G_TYPE_FLOAT as DBUS_TYPE_DOUBLE.
+
2005-06-30 Colin Walters <walters@verbum.org>
* test/glib/test-dbus-glib.c:
return typecode_to_gtype (typecode) != G_TYPE_INVALID;
}
-static gboolean
+static GType
basic_typecode_to_gtype (int typecode)
{
g_assert (dbus_type_is_basic (typecode));
};
register_basic (DBUS_TYPE_STRING, &typedata);
}
-
+ /* fundamental GTypes that don't map 1:1 with D-BUS types */
+ {
+ static const DBusGTypeMarshalData typedata = {
+ DBUS_TYPE_BYTE_AS_STRING,
+ &basic_vtable,
+ };
+ set_type_metadata (G_TYPE_CHAR, &typedata);
+ }
+ {
+ static const DBusGTypeMarshalData typedata = {
+ DBUS_TYPE_INT32_AS_STRING,
+ &basic_vtable,
+ };
+ set_type_metadata (G_TYPE_LONG, &typedata);
+ }
+ {
+ static const DBusGTypeMarshalData typedata = {
+ DBUS_TYPE_UINT32_AS_STRING,
+ &basic_vtable,
+ };
+ set_type_metadata (G_TYPE_ULONG, &typedata);
+ }
+ {
+ static const DBusGTypeMarshalData typedata = {
+ DBUS_TYPE_DOUBLE_AS_STRING,
+ &basic_vtable,
+ };
+ set_type_metadata (G_TYPE_FLOAT, &typedata);
+ }
+
/* Register complex types with builtin GType mappings */
{
static const DBusGTypeMarshalVtable vtable = {