From: Clemens Ladisch Date: Fri, 19 Feb 2010 16:07:20 +0000 (+0100) Subject: alsamixer: fix division by zero X-Git-Tag: v1.0.23~6 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=5a016b583b5c949253a9e791ad79f13e54f87054;p=alsa-utils.git alsamixer: fix division by zero The attempt to divide by max-min fails if a control has only one valid value. In this case, adjust the maximum so that the computation can succeed; the control will look like 0%. Signed-off-by: Clemens Ladisch --- diff --git a/alsamixer/mixer_display.c b/alsamixer/mixer_display.c index 9eadcc9..260c9b0 100644 --- a/alsamixer/mixer_display.c +++ b/alsamixer/mixer_display.c @@ -462,6 +462,8 @@ static void display_control(unsigned int control_index) err = snd_mixer_selem_get_capture_volume_range(control->elem, &min, &max); if (err < 0) return; + if (min == max) + max = min + 1; if (control->flags & IS_ACTIVE) wattrset(mixer_widget.window, 0);