From: Daniel Mack Date: Tue, 7 Oct 2014 12:25:13 +0000 (+0200) Subject: ALSA: usb: caiaq: check for cdev->n_streams > 1 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=897c329bcb2206dd025cdb7ba84831a4f3c872d0;p=GitHub%2FLineageOS%2FG12%2Fandroid_kernel_amlogic_linux-4.9.git ALSA: usb: caiaq: check for cdev->n_streams > 1 Coverity spotted a possible DIV0 condition when cdev->n_streams is 0. Fix this by making sure the value is > 1 in snd_usb_caiaq_audio_init(). Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai --- diff --git a/sound/usb/caiaq/audio.c b/sound/usb/caiaq/audio.c index 7103b0908d13..272844746135 100644 --- a/sound/usb/caiaq/audio.c +++ b/sound/usb/caiaq/audio.c @@ -816,6 +816,11 @@ int snd_usb_caiaq_audio_init(struct snd_usb_caiaqdev *cdev) return -EINVAL; } + if (cdev->n_streams < 2) { + dev_err(dev, "bogus number of streams: %d\n", cdev->n_streams); + return -EINVAL; + } + ret = snd_pcm_new(cdev->chip.card, cdev->product_name, 0, cdev->n_audio_out, cdev->n_audio_in, &cdev->pcm);