summaryrefslogtreecommitdiffstats
path: root/src/pulsecore/sink.c
diff options
context:
space:
mode:
authorDaniel Mack <daniel@caiaq.de>2009-11-24 17:38:25 +0100
committerDaniel Mack <daniel@caiaq.de>2009-11-24 17:38:25 +0100
commitd5d488e33d85549c81d007497c8301c920d0a6e4 (patch)
tree5805a0dfc83aa8306a16f0b96f49530aa46c8765 /src/pulsecore/sink.c
parented7642ebac32bde8d9c47f3a1d8eabf75c3ea986 (diff)
parent0fcdc3d15d759e576ba3d71cc874c1036dcd36a0 (diff)
Merge branch 'master' of git://0pointer.de/pulseaudio
Diffstat (limited to 'src/pulsecore/sink.c')
-rw-r--r--src/pulsecore/sink.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c
index 971436d3..24fad34d 100644
--- a/src/pulsecore/sink.c
+++ b/src/pulsecore/sink.c
@@ -1731,10 +1731,14 @@ static void sync_input_volumes_within_thread(pa_sink *s) {
pa_sink_assert_io_context(s);
PA_HASHMAP_FOREACH(i, s->thread_info.inputs, state) {
+ if (pa_atomic_load(&i->before_ramping_v))
+ i->thread_info.future_soft_volume = i->soft_volume;
+
if (pa_cvolume_equal(&i->thread_info.soft_volume, &i->soft_volume))
continue;
- i->thread_info.soft_volume = i->soft_volume;
+ if (!pa_atomic_load(&i->before_ramping_v))
+ i->thread_info.soft_volume = i->soft_volume;
pa_sink_input_request_rewind(i, 0, TRUE, FALSE, FALSE);
}
}