diff options
author | Lennart Poettering <lennart@poettering.net> | 2009-08-16 00:45:23 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2009-08-16 00:45:23 +0200 |
commit | 4c29ba9c332dd682ced5ed668aede16aa5861128 (patch) | |
tree | c0e71f7bd470def7bbd9f97419dd5037f7f82cc4 /src/modules/module-rescue-streams.c | |
parent | 2a39663ab61614982c52e244bde596dcc1a08f37 (diff) |
modules: add various checks to avoid selecting objects that are not linked or in another unclear state
Diffstat (limited to 'src/modules/module-rescue-streams.c')
-rw-r--r-- | src/modules/module-rescue-streams.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/modules/module-rescue-streams.c b/src/modules/module-rescue-streams.c index 82f693f9..722d84b2 100644 --- a/src/modules/module-rescue-streams.c +++ b/src/modules/module-rescue-streams.c @@ -71,6 +71,9 @@ static pa_sink* find_evacuation_sink(pa_core *c, pa_sink_input *i, pa_sink *skip if (target == skip) continue; + if (!PA_SINK_IS_LINKED(pa_sink_get_state(target))) + continue; + if (pa_sink_input_may_move_to(i, target)) return target; } @@ -159,6 +162,9 @@ static pa_source* find_evacuation_source(pa_core *c, pa_source_output *o, pa_sou if (!target->monitor_of != !skip->monitor_of) continue; + if (!PA_SOURCE_IS_LINKED(pa_source_get_state(target))) + continue; + if (pa_source_output_may_move_to(o, target)) return target; } |