diff options
author | David Zeuthen <davidz@redhat.com> | 2010-09-09 17:39:19 -0400 |
---|---|---|
committer | David Zeuthen <davidz@redhat.com> | 2010-09-09 17:39:19 -0400 |
commit | 023f6a1049c7c11b999d27ba1e349f69ce90a2d3 (patch) | |
tree | 0eb95f175da650a99cb4733b29cdba8746f22ddc /gsettings/dconfsettingsbackend.c | |
parent | 38768bb410dfe32c85ecf1628294a0936286cc04 (diff) | |
download | dconf-023f6a1049c7c11b999d27ba1e349f69ce90a2d3.tar.gz |
Update to latest GDBus ABI
The GDBus filter ABI has been changed, see
http://git.gnome.org/browse/glib/commit/?id=c3371efcaa47b03941c6c8148687b0a21d18dfbe
for details.
Signed-off-by: David Zeuthen <davidz@redhat.com>
Diffstat (limited to 'gsettings/dconfsettingsbackend.c')
-rw-r--r-- | gsettings/dconfsettingsbackend.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/gsettings/dconfsettingsbackend.c b/gsettings/dconfsettingsbackend.c index 4170a52..841e14e 100644 --- a/gsettings/dconfsettingsbackend.c +++ b/gsettings/dconfsettingsbackend.c @@ -98,7 +98,7 @@ dconf_settings_backend_new_outstanding (DConfSettingsBackend *dcsb, return &outstanding->serial; } -static GDBusMessageFilterResult +static gboolean dconf_settings_backend_remove_outstanding (DConfSettingsBackend *dcsb, guint bus_type, GDBusMessage *message, @@ -162,9 +162,7 @@ dconf_settings_backend_remove_outstanding (DConfSettingsBackend *dcsb, g_static_mutex_unlock (&dcsb->lock); - return found ? - G_DBUS_MESSAGE_FILTER_RESULT_MESSAGE_CONSUMED : - G_DBUS_MESSAGE_FILTER_RESULT_NO_EFFECT; + return found; } static gboolean @@ -278,7 +276,7 @@ dconf_settings_backend_incoming_signal (DConfSettingsBackend *dcsb, } } -static GDBusMessageFilterResult +static GDBusMessage * dconf_settings_backend_filter (GDBusConnection *connection, GDBusMessage *message, gboolean is_incoming, @@ -308,14 +306,19 @@ dconf_settings_backend_filter (GDBusConnection *connection, switch (g_dbus_message_get_message_type (message)) { case G_DBUS_MESSAGE_TYPE_METHOD_RETURN: - return dconf_settings_backend_remove_outstanding (dcsb, bus_type, - message, ae); + if (dconf_settings_backend_remove_outstanding (dcsb, bus_type, + message, ae)) + { + /* consume message */ + g_object_unref (message); + return NULL; + } case G_DBUS_MESSAGE_TYPE_SIGNAL: dconf_settings_backend_incoming_signal (dcsb, bus_type, message, ae); default: - return G_DBUS_MESSAGE_FILTER_RESULT_NO_EFFECT; + return message; } } |