From f7b2bb8549e352353427d0f8913c96914dd0baab Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Fri, 28 Oct 2011 09:46:01 +0300 Subject: ALSA: hwdep: silence integer overflow warning Smatch complains that if device is INT_MAX then device + 1 can overflow. It just means we would have an annoying loop while we check all the devices from -2147483648 to SNDRV_MINOR_HWDEPS. Signed-off-by: Dan Carpenter Signed-off-by: Takashi Iwai --- sound/core/hwdep.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'sound') diff --git a/sound/core/hwdep.c b/sound/core/hwdep.c index a70ee7f1ed98..031e215b6dde 100644 --- a/sound/core/hwdep.c +++ b/sound/core/hwdep.c @@ -272,7 +272,14 @@ static int snd_hwdep_control_ioctl(struct snd_card *card, if (get_user(device, (int __user *)arg)) return -EFAULT; mutex_lock(®ister_mutex); - device = device < 0 ? 0 : device + 1; + + if (device < 0) + device = 0; + else if (device < SNDRV_MINOR_HWDEPS) + device++; + else + device = SNDRV_MINOR_HWDEPS; + while (device < SNDRV_MINOR_HWDEPS) { if (snd_hwdep_search(card, device)) break; -- cgit v1.2.3-59-g8ed1b