bluez/gdbus
Vinicius Costa Gomes 6aa1c4488e gdbus: Fix the ordering of signals
Consider the following example:

/foo
  properties: "A", "B"

/bar
  properties: "C", "D"

If during a given mainloop iteration, property "A" of object '/foo' is
changed, then properties "C" and "D" of '/bar', lastly "B" of '/foo',
the current code will emit the PropertiesChanged signals in following
order: "A", "B", "C", "D".

This may confuse applications that have a dependency on the order of
those signals.

This fixes the ordering, so in the example, the order becomes:
"C", "D", "A", B". This is considered not to be a problem, as
applications may use the flag G_DBUS_PROPERTY_CHANGED_FLAG_FLUSH, so
property changed signals are emitted as soon as possible.

The solution is for each object, to reschedule the signals every time a
signal is emitted.
2016-05-04 17:50:28 +03:00
..
client.c gdbus/client: Use g_dbus_send_message if callback is not set 2016-03-08 13:33:25 +02:00
gdbus.h gdbus: Fix the ordering of signals 2016-05-04 17:50:28 +03:00
mainloop.c gdbus: Close private connection if setup fails 2015-04-12 19:06:46 +03:00
object.c gdbus: Fix the ordering of signals 2016-05-04 17:50:28 +03:00
polkit.c Revert "Ensure config.h is included by using CPPFLAGS" 2012-12-07 12:46:04 +02:00
watch.c gdbus: Fix Memory Leak 2015-12-04 14:28:52 +02:00