summaryrefslogtreecommitdiffstats
path: root/gdbus
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2008-05-27 09:07:28 +0000
committerMarcel Holtmann <marcel@holtmann.org>2008-05-27 09:07:28 +0000
commitcc2d696524d90b3c624c8857338f8572c7edff99 (patch)
tree6126bf7a8afc2f69b1545dac514c0dc242dc1eb3 /gdbus
parentaff0ec6707716c2ea129695f85715d59e3d9474b (diff)
More fixes for the message dispatch handling
Diffstat (limited to 'gdbus')
-rw-r--r--gdbus/object.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/gdbus/object.c b/gdbus/object.c
index 6011753d..d018fce3 100644
--- a/gdbus/object.c
+++ b/gdbus/object.c
@@ -309,7 +309,7 @@ static DBusHandlerResult generic_message(DBusConnection *connection,
if (!iface)
return DBUS_HANDLER_RESULT_NOT_YET_HANDLED;
- for (method = iface->methods;
+ for (method = iface->methods; method &&
method->name && method->function; method++) {
DBusMessage *reply;
@@ -321,9 +321,6 @@ static DBusHandlerResult generic_message(DBusConnection *connection,
method->signature) == FALSE)
continue;
- if (method->function == NULL)
- continue;
-
reply = method->function(connection, message, iface->user_data);
if (method->flags & G_DBUS_METHOD_FLAG_NOREPLY) {
@@ -346,7 +343,7 @@ static DBusHandlerResult generic_message(DBusConnection *connection,
return DBUS_HANDLER_RESULT_HANDLED;
}
- for (current = iface->old_methods;
+ for (current = iface->old_methods; current &&
current->name && current->message_function; current++) {
if (!dbus_message_is_method_call(message, iface->name,
current->name))