[alsa-devel] [PATCH] snd_user_file: fix memory leak

Takashi Iwai tiwai at suse.de
Mon Nov 3 17:31:05 CET 2014


At Mon, 03 Nov 2014 17:22:28 +0100,
Andreas Schwab wrote:
> 
> Call wordfree if and only if wordfree returns zero or WRDE_NOSPACE
> 
> Signed-off-by: Andreas Schwab <schwab at suse.de>

Thanks, applied.


Takashi

> ---
>  src/userfile.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/src/userfile.c b/src/userfile.c
> index 3a73836..72779da 100644
> --- a/src/userfile.c
> +++ b/src/userfile.c
> @@ -44,19 +44,20 @@ int snd_user_file(const char *file, char **result)
>  	err = wordexp(file, &we, WRDE_NOCMD);
>  	switch (err) {
>  	case WRDE_NOSPACE:
> +		wordfree(&we);
>  		return -ENOMEM;
>  	case 0:
>  		if (we.we_wordc == 1)
>  			break;
> +		wordfree(&we);
>  		/* fall thru */
>  	default:
> -		wordfree(&we);
>  		return -EINVAL;
>  	}
>  	*result = strdup(we.we_wordv[0]);
> +	wordfree(&we);
>  	if (*result == NULL)
>  		return -ENOMEM;
> -	wordfree(&we);
>  	return 0;
>  }
>  
> -- 
> 2.1.3
> 
> -- 
> Andreas Schwab, SUSE Labs, schwab at suse.de
> GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
> "And now for something completely different."
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 


More information about the Alsa-devel mailing list