[alsa-devel] [PATCH 2/3] ALSA: core: release the constraint check for replace ops

Takashi Iwai tiwai at suse.de
Wed Aug 24 08:01:08 CEST 2011


At Wed, 24 Aug 2011 11:12:39 +0800,
Lu Guanqun wrote:
> 
> Suppose the ALSA card already has a number of MAX_USER_CONTROLS controls, and
> the user wants to replace one, it should not fail at this condition check.

It'd be simpler to ignore the check when replace flag is set?
The proposed change here looks too tricky, IMO...


thanks,

Takashi


> Signed-off-by: Lu Guanqun <guanqun.lu at intel.com>
> ---
>  sound/core/control.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/sound/core/control.c b/sound/core/control.c
> index 7f2b3a7..98b7fc7 100644
> --- a/sound/core/control.c
> +++ b/sound/core/control.c
> @@ -1073,7 +1073,7 @@ static int snd_ctl_elem_add(struct snd_ctl_file *file,
>  	struct user_element *ue;
>  	int idx, err;
>  
> -	if (card->user_ctl_count >= MAX_USER_CONTROLS)
> +	if (card->user_ctl_count >= MAX_USER_CONTROLS + !!replace)
>  		return -ENOMEM;
>  	if (info->count < 1)
>  		return -EINVAL;
> 


More information about the Alsa-devel mailing list