From acaeb71cf876e9c6a68c9828cea8c7d69ccc8cf8 Mon Sep 17 00:00:00 2001 From: Tanu Kaskinen Date: Mon, 29 Mar 2010 08:25:42 +0300 Subject: dbus: Fix segfault when receiving a property access call that isn't permitted. --- src/pulsecore/protocol-dbus.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/pulsecore/protocol-dbus.c') diff --git a/src/pulsecore/protocol-dbus.c b/src/pulsecore/protocol-dbus.c index 582bc658..a8a9d603 100644 --- a/src/pulsecore/protocol-dbus.c +++ b/src/pulsecore/protocol-dbus.c @@ -406,7 +406,7 @@ static enum find_result_t find_handler_from_properties_call(struct call_info *ca return NO_SUCH_PROPERTY_INTERFACE; else if ((call_info->property_handler = pa_hashmap_get(call_info->iface_entry->property_handlers, call_info->property))) - return FOUND_GET_PROPERTY; + return call_info->property_handler->get_cb ? FOUND_GET_PROPERTY : PROPERTY_ACCESS_DENIED; else return NO_SUCH_PROPERTY; @@ -440,7 +440,7 @@ static enum find_result_t find_handler_from_properties_call(struct call_info *ca call_info->expected_property_sig = call_info->property_handler->type; if (pa_streq(call_info->property_sig, call_info->expected_property_sig)) - return FOUND_SET_PROPERTY; + return call_info->property_handler->set_cb ? FOUND_SET_PROPERTY : PROPERTY_ACCESS_DENIED; else return INVALID_PROPERTY_SIG; -- cgit