summaryrefslogtreecommitdiffstats
path: root/src/pulsecore/sink.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-11-05 22:54:42 +0100
committerLennart Poettering <lennart@poettering.net>2009-11-05 22:54:42 +0100
commit4d62f159a74c6e5b46be5823483a7dedd5691b45 (patch)
tree0a8c4d1865dca184b275963da556b352158f9878 /src/pulsecore/sink.c
parent721e32b473ca821d5551a3d93ac04f84c5988c8f (diff)
parent897ef86b7fbb87ef17d30c584e6cd93abfc342bc (diff)
Merge remote branch 'origin/merge-queue'
Conflicts: src/pulsecore/sink-input.c src/pulsecore/sink.c
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);
}
}