[[PATCH v0] 4/5] device-port: Fire a hook when creating a new port.

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

 



This adds a new hook: PA_HOOK_PORT_NEW
---
 src/pulsecore/core.h        | 1 +
 src/pulsecore/device-port.c | 5 +++++
 2 files changed, 6 insertions(+)

diff --git a/src/pulsecore/core.h b/src/pulsecore/core.h
index a8cff5c..2f75b56 100644
--- a/src/pulsecore/core.h
+++ b/src/pulsecore/core.h
@@ -119,6 +119,7 @@ typedef enum pa_core_hook {
     PA_CORE_HOOK_CARD_PROFILE_AVAILABLE_CHANGED,
     PA_CORE_HOOK_PORT_AVAILABLE_CHANGED,
     PA_CORE_HOOK_PORT_LATENCY_OFFSET_CHANGED,
+    PA_CORE_HOOK_PORT_NEW,
     PA_CORE_HOOK_MAX
 } pa_core_hook_t;
 
diff --git a/src/pulsecore/device-port.c b/src/pulsecore/device-port.c
index b771d23..6b8a62b 100644
--- a/src/pulsecore/device-port.c
+++ b/src/pulsecore/device-port.c
@@ -132,6 +132,11 @@ pa_device_port *pa_device_port_new(pa_core *c, pa_device_port_new_data *data, si
     p = PA_DEVICE_PORT(pa_object_new_internal(PA_ALIGN(sizeof(pa_device_port)) + extra, pa_device_port_type_id, pa_device_port_check_type));
     p->parent.free = device_port_free;
 
+    if (pa_hook_fire(&c->hooks[PA_CORE_HOOK_PORT_NEW], data) < 0) {
+        pa_xfree(p);
+        return NULL;
+    }
+
     p->name = data->name;
     data->name = NULL;
     p->description = data->description;
-- 
1.8.2.1



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

  Powered by Linux