]> code.delx.au - pulseaudio/commitdiff
sink-input: Check flat volume with pa_sink_flat_volume_enabled().
authorTanu Kaskinen <tanuk@iki.fi>
Fri, 15 Apr 2011 15:36:38 +0000 (18:36 +0300)
committerColin Guthrie <colin@mageia.org>
Mon, 18 Apr 2011 08:31:51 +0000 (10:31 +0200)
Checking just the flag doesn't work if the sink uses volume sharing, because
such sinks never have PA_SINK_FLAT_VOLUME set.

src/pulsecore/sink-input.c

index 46f26f92414babf48c3d79ea595624ae9ee93054..1931d9940929897b9fb9f2eede63acc082c1eba3 100644 (file)
@@ -1020,7 +1020,7 @@ void pa_sink_input_set_volume(pa_sink_input *i, const pa_cvolume *volume, pa_boo
     pa_assert(volume->channels == 1 || pa_cvolume_compatible(volume, &i->sample_spec));
     pa_assert(i->volume_writable);
 
-    if ((i->sink->flags & PA_SINK_FLAT_VOLUME) && !absolute) {
+    if (!absolute && pa_sink_flat_volume_enabled(i->sink)) {
         v = i->sink->reference_volume;
         pa_cvolume_remap(&v, &i->sink->channel_map, &i->channel_map);
 
@@ -1043,7 +1043,7 @@ void pa_sink_input_set_volume(pa_sink_input *i, const pa_cvolume *volume, pa_boo
     i->volume = *volume;
     i->save_volume = save;
 
-    if (i->sink->flags & PA_SINK_FLAT_VOLUME) {
+    if (pa_sink_flat_volume_enabled(i->sink)) {
         /* We are in flat volume mode, so let's update all sink input
          * volumes and update the flat volume of the sink */