mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-31 22:25:33 -04:00
pactl: optimized code
some if statements are redundant, use switch instead of it. Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/686>
This commit is contained in:
parent
cfd8fb9398
commit
b8c15e8787
1 changed files with 23 additions and 12 deletions
|
|
@ -2552,19 +2552,30 @@ static int parse_volume(const char *vol_spec, pa_volume_t *vol, enum volume_flag
|
||||||
pa_xfree(vs);
|
pa_xfree(vs);
|
||||||
|
|
||||||
if (*vol_flags & VOL_RELATIVE) {
|
if (*vol_flags & VOL_RELATIVE) {
|
||||||
if ((*vol_flags & 0x0F) == VOL_UINT)
|
switch (*vol_flags & 0x0F) {
|
||||||
v += (double) PA_VOLUME_NORM;
|
case VOL_UINT:
|
||||||
if ((*vol_flags & 0x0F) == VOL_PERCENT)
|
v += (double) PA_VOLUME_NORM;
|
||||||
v += 100.0;
|
break;
|
||||||
if ((*vol_flags & 0x0F) == VOL_LINEAR)
|
case VOL_PERCENT:
|
||||||
v += 1.0;
|
v += 100.0;
|
||||||
|
break;
|
||||||
|
case VOL_LINEAR:
|
||||||
|
v += 1.0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
switch (*vol_flags & 0x0F) {
|
||||||
|
case VOL_PERCENT:
|
||||||
|
v = v * (double) PA_VOLUME_NORM / 100;
|
||||||
|
break;
|
||||||
|
case VOL_LINEAR:
|
||||||
|
v = pa_sw_volume_from_linear(v);
|
||||||
|
break;
|
||||||
|
case VOL_DECIBEL:
|
||||||
|
v = pa_sw_volume_from_dB(v);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
if ((*vol_flags & 0x0F) == VOL_PERCENT)
|
|
||||||
v = v * (double) PA_VOLUME_NORM / 100;
|
|
||||||
if ((*vol_flags & 0x0F) == VOL_LINEAR)
|
|
||||||
v = pa_sw_volume_from_linear(v);
|
|
||||||
if ((*vol_flags & 0x0F) == VOL_DECIBEL)
|
|
||||||
v = pa_sw_volume_from_dB(v);
|
|
||||||
|
|
||||||
if (!PA_VOLUME_IS_VALID((pa_volume_t) v)) {
|
if (!PA_VOLUME_IS_VALID((pa_volume_t) v)) {
|
||||||
pa_log(_("Volume outside permissible range.\n"));
|
pa_log(_("Volume outside permissible range.\n"));
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue