diff options
author | Lennart Poettering <lennart@poettering.net> | 2009-02-03 02:23:46 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2009-02-03 02:23:46 +0100 |
commit | e47d03dea446d0387a7c07a470c9c680537d9c34 (patch) | |
tree | 59b0e807d5a3c56aa69421a8412972d7e154e748 /src/pulsecore/sink-input.c | |
parent | c61ad2a70619fc2fcec209838b37e047df2d1d2d (diff) |
implement PA_STREAM_FAIL_ON_SUSPEND logic
Diffstat (limited to 'src/pulsecore/sink-input.c')
-rw-r--r-- | src/pulsecore/sink-input.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/pulsecore/sink-input.c b/src/pulsecore/sink-input.c index d4d11194..8bc434ea 100644 --- a/src/pulsecore/sink-input.c +++ b/src/pulsecore/sink-input.c @@ -144,9 +144,13 @@ pa_sink_input* pa_sink_input_new( } pa_return_null_if_fail(data->sink); - pa_return_null_if_fail(pa_sink_get_state(data->sink) != PA_SINK_UNLINKED); + pa_return_null_if_fail(PA_SINK_IS_LINKED(pa_sink_get_state(data->sink))); pa_return_null_if_fail(!data->sync_base || (data->sync_base->sink == data->sink && pa_sink_input_get_state(data->sync_base) == PA_SINK_INPUT_CORKED)); + if ((flags & PA_SINK_INPUT_FAIL_ON_SUSPEND) && + pa_sink_get_state(data->sink) == PA_SINK_SUSPENDED) + return NULL; + if (!data->sample_spec_is_set) data->sample_spec = data->sink->sample_spec; |