summaryrefslogtreecommitdiffstats
path: root/src/pulse/volume.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2009-01-30 00:14:28 +0100
committerLennart Poettering <lennart@poettering.net>2009-01-30 00:14:28 +0100
commit634afede7dcbf7ce5739310b6398d64a1221d25c (patch)
tree5bdce04754314ee51e8c48b4807a1048568b80f2 /src/pulse/volume.c
parent47a9b96b64e9fd949adf4dd1fbd26c5d75a5df30 (diff)
properly deal with the case when l/r is silent when adjust balance
Diffstat (limited to 'src/pulse/volume.c')
-rw-r--r--src/pulse/volume.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/pulse/volume.c b/src/pulse/volume.c
index 3434cb18..4da133df 100644
--- a/src/pulse/volume.c
+++ b/src/pulse/volume.c
@@ -487,12 +487,12 @@ pa_cvolume* pa_cvolume_set_balance(pa_cvolume *v, const pa_channel_map *map, flo
for (c = 0; c < map->channels; c++) {
if (on_left(map->map[c])) {
if (left == 0)
- v->values[c] = 0;
+ v->values[c] = nleft;
else
v->values[c] = (pa_volume_t) (((uint64_t) v->values[c] * (uint64_t) nleft) / (uint64_t) left);
} else if (on_right(map->map[c])) {
if (right == 0)
- v->values[c] = 0;
+ v->values[c] = nright;
else
v->values[c] = (pa_volume_t) (((uint64_t) v->values[c] * (uint64_t) nright) / (uint64_t) right);
}