cpw.gillux.detachablepurple: 019763f2: Fix in the D-Bus property setter: handle...

gillux at soc.pidgin.im gillux at soc.pidgin.im
Sat May 12 16:56:33 EDT 2012


----------------------------------------------------------------------
Revision: 019763f28ca2acf1714396ce527933fe87b39ae7
Parent:   0bb8c07e9fe6742e151e3d11630220ceaf51858e
Author:   gillux at soc.pidgin.im
Date:     05/12/12 15:27:00
Branch:   im.pidgin.cpw.gillux.detachablepurple
URL: http://d.pidgin.im/viewmtn/revision/info/019763f28ca2acf1714396ce527933fe87b39ae7

Changelog: 

Fix in the D-Bus property setter: handle boxed values.

Changes against parent 0bb8c07e9fe6742e151e3d11630220ceaf51858e

  patched  libpurple/pobject.c

-------------- next part --------------
============================================================
--- libpurple/pobject.c	724f1a49adc4c8fc00a1254f493b28488fb4f5b9
+++ libpurple/pobject.c	16b3cd7c9195aa3663bf96f016b3068d4fec757b
@@ -464,6 +464,11 @@ purple_object_set_dbus_property(PurpleOb
 	if (!prop_info)
 		return FALSE;
 
+	/* The GDBusInterfaceVTable setter gives a boxed GVariant. */
+	if (g_variant_is_of_type(prop_value, G_VARIANT_TYPE_VARIANT))
+		prop_value = g_variant_get_variant(prop_value);
+
+	/* Convert this GVariant to a GValue. */
 	g_dbus_gvariant_to_gvalue(prop_value, &gval);
 	g_value_init(&gval2, G_PARAM_SPEC_VALUE_TYPE(pspec));
 	if (G_TYPE_IS_OBJECT(G_PARAM_SPEC_VALUE_TYPE(pspec))


More information about the Commits mailing list