These are patches cherry-picked from upstream - gitorious.org:colord/master.git
They are applied inline, rather than as separate patches, so that they
automatically go away once the upstream release containing them is merged in.
--- colord-1.3.2.orig/lib/colord/cd-device.c
+++ colord-1.3.2/lib/colord/cd-device.c
@@ -2235,7 +2235,6 @@ cd_device_finalize (GObject *object)
 {
 	CdDevice *device = CD_DEVICE (object);
 	CdDevicePrivate *priv = GET_PRIVATE (device);
-	guint ret;
 
 	g_return_if_fail (CD_IS_DEVICE (object));
 
@@ -2249,17 +2248,8 @@ cd_device_finalize (GObject *object)
 	g_free (priv->vendor);
 	g_strfreev (priv->profiling_inhibitors);
 	g_ptr_array_unref (priv->profiles);
-	if (priv->proxy != NULL) {
-		ret = g_signal_handlers_disconnect_by_func (priv->proxy,
-							    G_CALLBACK (cd_device_dbus_signal_cb),
-							    device);
-//		g_assert (ret > 0);
-		ret = g_signal_handlers_disconnect_by_func (priv->proxy,
-							    G_CALLBACK (cd_device_dbus_properties_changed_cb),
-							    device);
-//		g_assert (ret > 0);
+	if (priv->proxy != NULL)
 		g_object_unref (priv->proxy);
-	}
 
 	G_OBJECT_CLASS (cd_device_parent_class)->finalize (object);
 }
--- colord-1.3.2.orig/lib/colord/cd-profile.c
+++ colord-1.3.2/lib/colord/cd-profile.c
@@ -1489,15 +1489,8 @@ cd_profile_finalize (GObject *object)
 	g_free (priv->format);
 	g_free (priv->title);
 	g_strfreev (priv->warnings);
-	if (priv->proxy != NULL) {
-		g_signal_handlers_disconnect_by_func (priv->proxy,
-						      G_CALLBACK (cd_profile_dbus_signal_cb),
-						      profile);
-		g_signal_handlers_disconnect_by_func (priv->proxy,
-						      G_CALLBACK (cd_profile_dbus_properties_changed_cb),
-						      profile);
+	if (priv->proxy != NULL)
 		g_object_unref (priv->proxy);
-	}
 
 	G_OBJECT_CLASS (cd_profile_parent_class)->finalize (object);
 }
--- colord-1.3.2.orig/lib/colord/cd-sensor.c
+++ colord-1.3.2/lib/colord/cd-sensor.c
@@ -1612,7 +1612,6 @@ cd_sensor_finalize (GObject *object)
 {
 	CdSensor *sensor = CD_SENSOR (object);
 	CdSensorPrivate *priv = GET_PRIVATE (sensor);
-	guint ret;
 
 	g_return_if_fail (CD_IS_SENSOR (object));
 
@@ -1623,17 +1622,8 @@ cd_sensor_finalize (GObject *object)
 	g_free (priv->vendor);
 	g_hash_table_unref (priv->options);
 	g_hash_table_destroy (priv->metadata);
-	if (priv->proxy != NULL) {
-		ret = g_signal_handlers_disconnect_by_func (priv->proxy,
-							    G_CALLBACK (cd_sensor_dbus_signal_cb),
-							    sensor);
-		g_assert (ret > 0);
-		ret = g_signal_handlers_disconnect_by_func (priv->proxy,
-							    G_CALLBACK (cd_sensor_dbus_properties_changed_cb),
-							    sensor);
-		g_assert (ret > 0);
+	if (priv->proxy != NULL)
 		g_object_unref (priv->proxy);
-	}
 
 	G_OBJECT_CLASS (cd_sensor_parent_class)->finalize (object);
 }
