ALSA: control: Allow to pass items zero to snd_ctl_enum_info()
Although this is weird, some drivers want to allow empty control elements intentionally, e.g. the number of items may change depending on the firmware status. Let the function simply returning in such a case. Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
df803e1389
commit
a7e6fb9915
1 changed files with 2 additions and 0 deletions
|
@ -1745,6 +1745,8 @@ int snd_ctl_enum_info(struct snd_ctl_elem_info *info, unsigned int channels,
|
|||
info->type = SNDRV_CTL_ELEM_TYPE_ENUMERATED;
|
||||
info->count = channels;
|
||||
info->value.enumerated.items = items;
|
||||
if (!items)
|
||||
return 0;
|
||||
if (info->value.enumerated.item >= items)
|
||||
info->value.enumerated.item = items - 1;
|
||||
WARN(strlen(names[info->value.enumerated.item]) >= sizeof(info->value.enumerated.name),
|
||||
|
|
Loading…
Add table
Reference in a new issue