diff options
| -rw-r--r-- | gdbus/object.c | 7 | 
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)) | 
