]> code.delx.au - pulseaudio/commitdiff
actually mute sinks when asked for i, add new function pa_sink_suspend_all
authorLennart Poettering <lennart@poettering.net>
Wed, 15 Aug 2007 19:25:42 +0000 (19:25 +0000)
committerLennart Poettering <lennart@poettering.net>
Wed, 15 Aug 2007 19:25:42 +0000 (19:25 +0000)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1661 fefdeb5f-60dc-0310-8127-8f9354f1896f

src/pulsecore/sink.c
src/pulsecore/sink.h

index cfead9be2198bc81d9c9ba01782874170de4e7d7..2c7c661c272c7586272b8a532a442fbc90660361 100644 (file)
@@ -587,6 +587,7 @@ void pa_sink_set_mute(pa_sink *s, int mute) {
     pa_sink_assert_ref(s);
 
     changed = s->muted != mute;
+    s->muted = mute;
 
     if (s->set_mute && s->set_mute(s) < 0)
         s->set_mute = NULL;
@@ -819,3 +820,16 @@ int pa_sink_process_msg(pa_msgobject *o, int code, void *userdata, int64_t offse
 
     return -1;
 }
+
+int pa_sink_suspend_all(pa_core *c, int suspend) {
+    pa_sink *sink;
+    uint32_t idx;
+    int ret = 0;
+    
+    pa_core_assert_ref(c);
+
+    for (sink = PA_SINK(pa_idxset_first(c->sinks, &idx)); sink; sink = PA_SINK(pa_idxset_next(c->sinks, &idx)))
+        ret -= pa_sink_suspend(sink, suspend) < 0;
+
+    return ret;
+}
index 8a6fa236c47ae913abdbc846d2aab1119854fae6..fadc76eb76940bf37ad9b73137be538ab025ec2f 100644 (file)
@@ -163,4 +163,6 @@ static inline int PA_SINK_OPENED(pa_sink_state_t x) {
     return x == PA_SINK_RUNNING || x == PA_SINK_IDLE;
 }
 
+int pa_sink_suspend_all(pa_core *c, int suspend);
+
 #endif