summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-06-06 15:32:45 +0200
committerLennart Poettering <lennart@poettering.net>2009-06-06 15:32:45 +0200
commitd1646f78af6a43928cb0cd6b3e8d45578c489cb1 (patch)
tree0f70b7fca231496d6db4ac37f069a90c3e095f7b /src
parent69eab1e057e000951516cfd381846c33abc8aaf1 (diff)
core: monitor sources need to inherit the suspend cause from their sinks
Diffstat (limited to 'src')
-rw-r--r--src/pulsecore/sink.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c
index a087e42d..141084d6 100644
--- a/src/pulsecore/sink.c
+++ b/src/pulsecore/sink.c
@@ -505,10 +505,13 @@ int pa_sink_suspend(pa_sink *s, pa_bool_t suspend, pa_suspend_cause_t cause) {
pa_assert(PA_SINK_IS_LINKED(s->state));
pa_assert(cause != 0);
- if (suspend)
+ if (suspend) {
s->suspend_cause |= cause;
- else
+ s->monitor_source->suspend_cause |= cause;
+ } else {
s->suspend_cause &= ~cause;
+ s->monitor_source->suspend_cause &= ~cause;
+ }
if ((pa_sink_get_state(s) == PA_SINK_SUSPENDED) == !!s->suspend_cause)
return 0;