[PATCH 3/3] message-handler: Send signal on handler events

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signals are used to notify clients when a messge handler was added/removed
or when the description changes.
---
 src/pulsecore/message-handler.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/pulsecore/message-handler.c b/src/pulsecore/message-handler.c
index 8f8830d6..b6505dc9 100644
--- a/src/pulsecore/message-handler.c
+++ b/src/pulsecore/message-handler.c
@@ -71,6 +71,9 @@ void pa_message_handler_register(pa_core *c, const char *recipient_name, const c
     handler->description = pa_xstrdup(description);
 
     pa_assert_se(pa_hashmap_put(c->message_handlers, handler->recipient, (void *) handler) == 0);
+
+    /* Notify clients that a new handler was added. */
+    pa_signal_post(c, "message-api", 1, "handler-added", recipient_name);
 }
 
 /* Unregister a message handler */
@@ -85,6 +88,9 @@ void pa_message_handler_unregister(pa_core *c, const char *recipient_name) {
     pa_xfree(handler->recipient);
     pa_xfree(handler->description);
     pa_xfree(handler);
+
+    /* Notify clients that a handler was removed. */
+    pa_signal_post(c, "message-api", 1, "handler-removed", recipient_name);
 }
 
 /* Send a message to a recipient or recipient group */
@@ -124,6 +130,9 @@ int pa_message_handler_set_description(pa_core *c, const char *recipient_name, c
     pa_xfree(handler->description);
     handler->description = pa_xstrdup(description);
 
+    /* Notify clients that a handler description changed. */
+    pa_signal_post(c, "message-api", 1, "handler-changed", recipient_name);
+
     return PA_OK;
 }
 
-- 
2.14.1



[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux