diff options
Diffstat (limited to 'mkfs')
| -rw-r--r-- | mkfs/options.c | 18 | 
1 files changed, 8 insertions, 10 deletions
| diff --git a/mkfs/options.c b/mkfs/options.c index 31b7731..4dce84e 100644 --- a/mkfs/options.c +++ b/mkfs/options.c @@ -146,7 +146,7 @@ const char *help_details =  void process_command_line(options_t *opt, int argc, char **argv)  {  	bool have_compressor; -	int i; +	int i, ret;  	memset(opt, 0, sizeof(*opt));  	sqfs_writer_cfg_init(&opt->cfg); @@ -159,25 +159,23 @@ void process_command_line(options_t *opt, int argc, char **argv)  		switch (i) {  		case 'c':  			have_compressor = true; +			ret = sqfs_compressor_id_from_name(optarg); -			if (sqfs_compressor_id_from_name(optarg, -							 &opt->cfg.comp_id)) { +			if (ret < 0) {  				have_compressor = false; -			} - -			if (!sqfs_compressor_exists(opt->cfg.comp_id)) -				have_compressor = false; -  #ifdef WITH_LZO -			if (opt->cfg.comp_id == SQFS_COMP_LZO) -				have_compressor = true; +				if (opt->cfg.comp_id == SQFS_COMP_LZO) +					have_compressor = true;  #endif +			}  			if (!have_compressor) {  				fprintf(stderr, "Unsupported compressor '%s'\n",  					optarg);  				exit(EXIT_FAILURE);  			} + +			opt->cfg.comp_id = ret;  			break;  		case 'b':  			opt->cfg.block_size = strtol(optarg, NULL, 0); | 
