PA_CORE_HOOK_SINK_INPUT_UNLINK_POST,
PA_CORE_HOOK_SINK_INPUT_MOVE_START,
PA_CORE_HOOK_SINK_INPUT_MOVE_FINISH,
+ PA_CORE_HOOK_SINK_INPUT_MOVE_FAIL,
PA_CORE_HOOK_SINK_INPUT_STATE_CHANGED,
PA_CORE_HOOK_SINK_INPUT_PROPLIST_CHANGED,
PA_CORE_HOOK_SINK_INPUT_SET_VOLUME,
PA_CORE_HOOK_SOURCE_OUTPUT_UNLINK_POST,
PA_CORE_HOOK_SOURCE_OUTPUT_MOVE_START,
PA_CORE_HOOK_SOURCE_OUTPUT_MOVE_FINISH,
+ PA_CORE_HOOK_SOURCE_OUTPUT_MOVE_FAIL,
PA_CORE_HOOK_SOURCE_OUTPUT_STATE_CHANGED,
PA_CORE_HOOK_SOURCE_OUTPUT_PROPLIST_CHANGED,
PA_CORE_HOOK_CLIENT_NEW,
pa_assert(q);
while ((i = PA_SINK_INPUT(pa_queue_pop(q)))) {
- pa_sink_input_unlink(i);
- pa_sink_input_unref(i);
+ if (pa_hook_fire(&i->core->hooks[PA_CORE_HOOK_SINK_INPUT_MOVE_FAIL], i) == PA_HOOK_OK) {
+ pa_sink_input_unlink(i);
+ pa_sink_input_unref(i);
+ }
}
pa_queue_free(q, NULL, NULL);
pa_assert(q);
while ((o = PA_SOURCE_OUTPUT(pa_queue_pop(q)))) {
- pa_source_output_unlink(o);
- pa_source_output_unref(o);
+ if (pa_hook_fire(&o->core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_MOVE_FAIL], o) == PA_HOOK_OK) {
+ pa_source_output_unlink(o);
+ pa_source_output_unref(o);
+ }
}
pa_queue_free(q, NULL, NULL);