[PATCH v2] erofs-utils: mkfs: fix a memory leak of compression type configuration

Gao Xiang hsiangkao at linux.alibaba.com
Mon Jul 25 15:56:38 AEST 2022


Hi Yue,

On Mon, Jul 25, 2022 at 01:45:49PM +0800, Yue Hu wrote:
> Release the memory allocated for compression type configuration. And no
> need to consider !optarg case since getopt_long() will do that.
> 
> Signed-off-by: Yue Hu <huyue2 at coolpad.com>
> ---

What's the difference between v1?
The patch itself looks good to me, but I need to try later.

Thanks,
Gao Xiang

>  lib/config.c | 3 +++
>  mkfs/main.c  | 4 ----
>  2 files changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/lib/config.c b/lib/config.c
> index 3963df2..c316a54 100644
> --- a/lib/config.c
> +++ b/lib/config.c
> @@ -55,6 +55,9 @@ void erofs_exit_configure(void)
>  #endif
>  	if (cfg.c_img_path)
>  		free(cfg.c_img_path);
> +
> +	if (cfg.c_compr_alg_master)
> +		free(cfg.c_compr_alg_master);
>  }
>  
>  static unsigned int fullpath_prefix;	/* root directory prefix length */
> diff --git a/mkfs/main.c b/mkfs/main.c
> index deb8e1f..9f5f1dc 100644
> --- a/mkfs/main.c
> +++ b/mkfs/main.c
> @@ -212,10 +212,6 @@ static int mkfs_parse_options_cfg(int argc, char *argv[])
>  				  long_options, NULL)) != -1) {
>  		switch (opt) {
>  		case 'z':
> -			if (!optarg) {
> -				cfg.c_compr_alg_master = "(default)";
> -				break;
> -			}
>  			/* get specified compression level */
>  			for (i = 0; optarg[i] != '\0'; ++i) {
>  				if (optarg[i] == ',') {
> -- 
> 2.17.1


More information about the Linux-erofs mailing list