sink,source: Account for corked streams in update_rate()
authorArun Raghavan <arun.raghavan@collabora.co.uk>
Tue, 18 Oct 2011 04:23:20 +0000 (09:53 +0530)
committerArun Raghavan <arun.raghavan@collabora.co.uk>
Tue, 18 Oct 2011 04:23:20 +0000 (09:53 +0530)
pa_sink/source_used_by() ignores corked/monitor streams, but we need to
make sure there aren't any of these while updating rate (at least for
now -- this is a restriction that would be nice to get rid of).

src/pulsecore/sink.c
src/pulsecore/source.c

index 5ca2453..454285f 100644 (file)
@@ -1385,7 +1385,7 @@ pa_bool_t pa_sink_update_rate(pa_sink *s, uint32_t rate, pa_bool_t passthrough)
             desired_rate = rate; /* use stream sampling rate, discard default/alternate settings */
         }
 
-        if (passthrough || pa_sink_used_by(s) == 0) {
+        if (passthrough || pa_sink_linked_by(s) == 0) {
             pa_sink_suspend(s, TRUE, PA_SUSPEND_IDLE); /* needed before rate update, will be resumed automatically */
         }
 
index e70e446..6da6ef2 100644 (file)
@@ -972,7 +972,7 @@ pa_bool_t pa_source_update_rate(pa_source *s, uint32_t rate, pa_bool_t passthrou
             desired_rate = rate; /* use stream sampling rate, discard default/alternate settings */
         }
 
-        if (passthrough || pa_source_used_by(s) == 0) {
+        if (passthrough || pa_source_linked_by(s) == 0) {
             pa_source_suspend(s, TRUE, PA_SUSPEND_IDLE); /* needed before rate update, will be resumed automatically */
         }