From 86bec09fa843160dd671cf53a32c13fafa0cb932 Mon Sep 17 00:00:00 2001 From: Marc-André Lureau Date: Wed, 11 Feb 2009 19:16:42 +0200 Subject: pulsecore: add PA_CORE_HOOK_*_MOVE_FAIL In case pa_*_move_all_fail(), it is nicer to let a module override the default behavior to fallback on a different sink/source. (instead of unlinking the sink_input/source_output) --- src/pulsecore/sink.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/pulsecore/sink.c') diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index 0c297ec3..558da8c6 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -533,8 +533,10 @@ void pa_sink_move_all_fail(pa_queue *q) { 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); -- cgit