[pulseaudio-discuss] [PATCHv2 2/4] modules: Remove obsolete source_output_may_move_to_cb()

Tanu Kaskinen tanuk at iki.fi
Tue Mar 5 13:59:13 PST 2013


On Tue, 2013-03-05 at 18:09 +0100, Stefan Huber wrote:
> The modules module-loopback and module-virtual-source contained
> redundant source_output_may_move_to_cb() implementations. Remove them.
> ---
>  src/modules/module-loopback.c       |   12 ------------
>  src/modules/module-virtual-source.c |   15 ---------------
>  2 files changed, 27 deletions(-)

Would you mind removing redundant sink_input_may_move_to_cb()
implementations in the same patch too?

> diff --git a/src/modules/module-loopback.c b/src/modules/module-loopback.c
> index 461c4a7..22ebc17 100644
> --- a/src/modules/module-loopback.c
> +++ b/src/modules/module-loopback.c
> @@ -379,17 +379,6 @@ static void source_output_kill_cb(pa_source_output *o) {
>  }
>  
>  /* Called from main thread */
> -static pa_bool_t source_output_may_move_to_cb(pa_source_output *o, pa_source *dest) {
> -    struct userdata *u;
> -
> -    pa_source_output_assert_ref(o);
> -    pa_assert_ctl_context();
> -    pa_assert_se(u = o->userdata);
> -
> -    return dest != u->sink_input->sink->monitor_source;
> -}

This is actually not redundant, because the core doesn't have a way to
know that the data pushed to the loopback modules's source output ends
up in the loopback module's sink input.

As a sidenote, this check could be improved by rejecting the move also
in the case where dest is a filter source connected to
u->sink_input->sink->monitor_source. Hmm, and also in the case where
u->sink_input->sink is a filter sink, and dest is a monitor source of
that filter sink's master sink. I'll write a patch.

-- 
Tanu



More information about the pulseaudio-discuss mailing list