From: Manuel Bachmann Date: Tue, 5 Jan 2016 14:45:34 +0000 (+0100) Subject: Fix set_mute in corner cases X-Git-Tag: blowfish_2.0.1~306 X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=commitdiff_plain;h=12686e3f00eb942bf587e99f80654400cc6995b6;p=src%2Fapp-framework-binder.git Fix set_mute in corner cases Signed-off-by: Manuel Bachmann --- diff --git a/plugins/audio/audio-alsa.c b/plugins/audio/audio-alsa.c index afbff421..51f49702 100644 --- a/plugins/audio/audio-alsa.c +++ b/plugins/audio/audio-alsa.c @@ -227,18 +227,20 @@ PUBLIC unsigned char _alsa_get_mute (unsigned int num) { return (unsigned char)!mute; } -PUBLIC void _alsa_set_mute (unsigned int num, unsigned char mute) { +PUBLIC void _alsa_set_mute (unsigned int num, unsigned char tomute) { snd_mixer_elem_t *elm_m; + int mute; - if (!dev_ctx || !dev_ctx[num] || !dev_ctx[num]->mixer_elm || 1 < mute < 0) + if (!dev_ctx || !dev_ctx[num] || !dev_ctx[num]->mixer_elm || 1 < tomute < 0) return; if (dev_ctx[num]->mixer_elm_m) { elm_m = dev_ctx[num]->mixer_elm_m; - mute = !mute; + mute = (int)!tomute; } else { elm_m = dev_ctx[num]->mixer_elm; + mute = (int)tomute; } if (snd_mixer_selem_has_playback_switch (elm_m))