浏览代码

ALSA: asihpi - Fix potential Oops in snd_asihpi_cmode_info()

Dan Carpenter reported that setting 0 to uinfo->value.enumerated.items
in snd_asihpi_cmode_info() may lead to Oops.  This function should
return an error immediately in such a case instead.

Cc: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Takashi Iwai 13 年之前
父节点
当前提交
74eeb141d3
共有 1 个文件被更改,包括 3 次插入0 次删除
  1. 3 0
      sound/pci/asihpi/asihpi.c

+ 3 - 0
sound/pci/asihpi/asihpi.c

@@ -2259,6 +2259,9 @@ static int snd_asihpi_cmode_info(struct snd_kcontrol *kcontrol,
 			valid_modes++;
 			}
 
+	if (!valid_modes)
+		return -EINVAL;
+
 	uinfo->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
 	uinfo->count = 1;
 	uinfo->value.enumerated.items = valid_modes;