Hi Vinicius, On Thu, Apr 18, 2013 at 8:50 PM, Vinicius Costa Gomes <vinicius.gomes@xxxxxxxxxxxxx> wrote: > In some situations, it may be useful to be sure that all the > properties updates for a object are sent. > --- > gdbus/gdbus.h | 2 ++ > gdbus/object.c | 19 +++++++++++++++++++ > 2 files changed, 21 insertions(+) > > diff --git a/gdbus/gdbus.h b/gdbus/gdbus.h > index 8b13393..ed280e4 100644 > --- a/gdbus/gdbus.h > +++ b/gdbus/gdbus.h > @@ -299,6 +299,8 @@ void g_dbus_emit_property_changed(DBusConnection *connection, > gboolean g_dbus_get_properties(DBusConnection *connection, const char *path, > const char *interface, DBusMessageIter *iter); > > +gboolean g_dbus_flush_properties(DBusConnection *connection, const char *path); > + > gboolean g_dbus_attach_object_manager(DBusConnection *connection); > gboolean g_dbus_detach_object_manager(DBusConnection *connection); > > diff --git a/gdbus/object.c b/gdbus/object.c > index 2f8ef45..14b6803 100644 > --- a/gdbus/object.c > +++ b/gdbus/object.c > @@ -1751,6 +1751,25 @@ gboolean g_dbus_get_properties(DBusConnection *connection, const char *path, > return TRUE; > } > > +gboolean g_dbus_flush_properties(DBusConnection *connection, const char *path) > +{ > + struct generic_data *data; > + > + if (path == NULL) > + return FALSE; > + > + if (!dbus_connection_get_object_path_data(connection, path, > + (void **) &data) || data == NULL) > + return FALSE; > + > + if (data->process_id) > + g_source_remove(data->process_id); > + > + process_changes(data); > + > + return TRUE; > +} > + > gboolean g_dbus_attach_object_manager(DBusConnection *connection) > { > struct generic_data *data; > -- > 1.8.2.1 What about creating a new flag for properties that need to emit a signal immediately when they change? -- Luiz Augusto von Dentz -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html