[pulseaudio-discuss] [PATCH 1/5] dbus: Handle the cases when a non-existing interface is detected in an incoming message.

Tanu Kaskinen ext-tanu.kaskinen at nokia.com
Thu Dec 3 05:28:36 PST 2009


---
 src/pulsecore/protocol-dbus.c |    8 ++++++++
 src/pulsecore/protocol-dbus.h |    1 +
 2 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/src/pulsecore/protocol-dbus.c b/src/pulsecore/protocol-dbus.c
index e427bb1..95518a1 100644
--- a/src/pulsecore/protocol-dbus.c
+++ b/src/pulsecore/protocol-dbus.c
@@ -552,10 +552,18 @@ static DBusHandlerResult handle_message_cb(DBusConnection *connection, DBusMessa
             pa_dbus_send_error(connection, message, DBUS_ERROR_UNKNOWN_METHOD, "No such method: %s", call_info.method);
             break;
 
+        case NO_SUCH_INTERFACE:
+            pa_dbus_send_error(connection, message, PA_DBUS_ERROR_NO_SUCH_INTERFACE, "No such interface: %s", call_info.interface);
+            break;
+
         case NO_SUCH_PROPERTY:
             pa_dbus_send_error(connection, message, PA_DBUS_ERROR_NO_SUCH_PROPERTY, "No such property: %s", call_info.property);
             break;
 
+        case NO_SUCH_PROPERTY_INTERFACE:
+            pa_dbus_send_error(connection, message, PA_DBUS_ERROR_NO_SUCH_INTERFACE, "No such property interface: %s", call_info.property_interface);
+            break;
+
         case INVALID_METHOD_SIG:
             pa_dbus_send_error(connection, message, DBUS_ERROR_INVALID_ARGS,
                                "Invalid signature for method %s: '%s'. Expected '%s'.",
diff --git a/src/pulsecore/protocol-dbus.h b/src/pulsecore/protocol-dbus.h
index 6d100f7..8999933 100644
--- a/src/pulsecore/protocol-dbus.h
+++ b/src/pulsecore/protocol-dbus.h
@@ -35,6 +35,7 @@
 #define PA_DBUS_CORE_INTERFACE "org.PulseAudio.Core1"
 #define PA_DBUS_CORE_OBJECT_PATH "/org/pulseaudio/core1"
 
+#define PA_DBUS_ERROR_NO_SUCH_INTERFACE PA_DBUS_CORE_INTERFACE ".NoSuchInterfaceError"
 #define PA_DBUS_ERROR_NO_SUCH_PROPERTY PA_DBUS_CORE_INTERFACE ".NoSuchPropertyError"
 #define PA_DBUS_ERROR_NOT_FOUND PA_DBUS_CORE_INTERFACE ".NotFoundError"




More information about the pulseaudio-discuss mailing list