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:56 +0000 (19:25 +0000)
committerLennart Poettering <lennart@poettering.net>
Wed, 15 Aug 2007 19:25:56 +0000 (19:25 +0000)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/lennart@1662 fefdeb5f-60dc-0310-8127-8f9354f1896f

src/pulsecore/source.c
src/pulsecore/source.h

index 0e448f6..30a45cb 100644 (file)
@@ -320,6 +320,7 @@ void pa_source_set_mute(pa_source *s, int mute) {
     pa_source_assert_ref(s);
 
     changed = s->muted != mute;
+    s->muted = mute;
 
     if (s->set_mute && s->set_mute(s) < 0)
         s->set_mute = NULL;
@@ -438,3 +439,16 @@ int pa_source_process_msg(pa_msgobject *object, int code, void *userdata, int64_
 
     return -1;
 }
+
+int pa_source_suspend_all(pa_core *c, int suspend) {
+    uint32_t idx;
+    pa_source *source;
+    int ret = 0;
+    
+    pa_core_assert_ref(c);
+    
+    for (source = PA_SOURCE(pa_idxset_first(c->sources, &idx)); source; source = PA_SOURCE(pa_idxset_next(c->sources, &idx)))
+        ret -= pa_source_suspend(source, suspend) < 0;
+
+    return ret;
+}
index fe59e58..ffe5107 100644 (file)
@@ -152,4 +152,6 @@ static inline int PA_SOURCE_OPENED(pa_source_state_t x) {
     return x == PA_SOURCE_RUNNING || x == PA_SOURCE_IDLE;
 }
 
+int pa_source_suspend_all(pa_core *c, int suspend);
+
 #endif