Btrfs-progs: switch to arg_strtou64() part1
switch to arg_strtou64 plus some cleanups to remove unnecessary codes. Signed-off-by: Wang Shilong <wangsl.fnst@cn.fujitsu.com> Signed-off-by: David Sterba <dsterba@suse.cz> Signed-off-by: Chris Mason <clm@fb.com>
This commit is contained in:
parent
42a3d9b774
commit
aab2f48c18
3 changed files with 11 additions and 53 deletions
|
@ -289,30 +289,13 @@ int main(int argc, char **argv)
|
|||
switch(opt) {
|
||||
errno = 0;
|
||||
case 'o':
|
||||
search_objectid = (u64)strtoll(optarg, NULL,
|
||||
10);
|
||||
if (errno) {
|
||||
fprintf(stderr, "Error parsing "
|
||||
"objectid\n");
|
||||
exit(1);
|
||||
}
|
||||
search_objectid = arg_strtou64(optarg);
|
||||
break;
|
||||
case 'g':
|
||||
search_generation = (u64)strtoll(optarg, NULL,
|
||||
10);
|
||||
if (errno) {
|
||||
fprintf(stderr, "Error parsing "
|
||||
"generation\n");
|
||||
exit(1);
|
||||
}
|
||||
search_generation = arg_strtou64(optarg);
|
||||
break;
|
||||
case 'l':
|
||||
search_level = strtol(optarg, NULL, 10);
|
||||
if (errno) {
|
||||
fprintf(stderr, "Error parsing "
|
||||
"level\n");
|
||||
exit(1);
|
||||
}
|
||||
search_level = arg_strtou64(optarg);
|
||||
break;
|
||||
default:
|
||||
usage();
|
||||
|
|
14
btrfs-list.c
14
btrfs-list.c
|
@ -1854,32 +1854,24 @@ int btrfs_list_parse_filter_string(char *opt_arg,
|
|||
{
|
||||
|
||||
u64 arg;
|
||||
char *ptr_parse_end = NULL;
|
||||
char *ptr_opt_arg_end = opt_arg + strlen(opt_arg);
|
||||
|
||||
switch (*(opt_arg++)) {
|
||||
case '+':
|
||||
arg = (u64)strtol(opt_arg, &ptr_parse_end, 10);
|
||||
arg = arg_strtou64(opt_arg);
|
||||
type += 2;
|
||||
if (ptr_parse_end != ptr_opt_arg_end)
|
||||
return -1;
|
||||
|
||||
btrfs_list_setup_filter(filters, type, arg);
|
||||
break;
|
||||
case '-':
|
||||
arg = (u64)strtoll(opt_arg, &ptr_parse_end, 10);
|
||||
arg = arg_strtou64(opt_arg);
|
||||
type += 1;
|
||||
if (ptr_parse_end != ptr_opt_arg_end)
|
||||
return -1;
|
||||
|
||||
btrfs_list_setup_filter(filters, type, arg);
|
||||
break;
|
||||
default:
|
||||
opt_arg--;
|
||||
arg = (u64)strtoll(opt_arg, &ptr_parse_end, 10);
|
||||
arg = arg_strtou64(opt_arg);
|
||||
|
||||
if (ptr_parse_end != ptr_opt_arg_end)
|
||||
return -1;
|
||||
btrfs_list_setup_filter(filters, type, arg);
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -1160,26 +1160,14 @@ int cmd_restore(int argc, char **argv)
|
|||
overwrite = 1;
|
||||
break;
|
||||
case 't':
|
||||
errno = 0;
|
||||
tree_location = (u64)strtoll(optarg, NULL, 10);
|
||||
if (errno != 0) {
|
||||
fprintf(stderr, "Tree location not valid\n");
|
||||
exit(1);
|
||||
}
|
||||
tree_location = arg_strtou64(optarg);
|
||||
break;
|
||||
case 'f':
|
||||
errno = 0;
|
||||
fs_location = (u64)strtoll(optarg, NULL, 10);
|
||||
if (errno != 0) {
|
||||
fprintf(stderr, "Fs location not valid\n");
|
||||
exit(1);
|
||||
}
|
||||
fs_location = arg_strtou64(optarg);
|
||||
break;
|
||||
case 'u':
|
||||
errno = 0;
|
||||
super_mirror = (int)strtol(optarg, NULL, 10);
|
||||
if (errno != 0 ||
|
||||
super_mirror >= BTRFS_SUPER_MIRROR_MAX) {
|
||||
super_mirror = arg_strtou64(optarg);
|
||||
if (super_mirror >= BTRFS_SUPER_MIRROR_MAX) {
|
||||
fprintf(stderr, "Super mirror not "
|
||||
"valid\n");
|
||||
exit(1);
|
||||
|
@ -1189,12 +1177,7 @@ int cmd_restore(int argc, char **argv)
|
|||
find_dir = 1;
|
||||
break;
|
||||
case 'r':
|
||||
errno = 0;
|
||||
root_objectid = (u64)strtoll(optarg, NULL, 10);
|
||||
if (errno != 0) {
|
||||
fprintf(stderr, "Root objectid not valid\n");
|
||||
exit(1);
|
||||
}
|
||||
root_objectid = arg_strtou64(optarg);
|
||||
break;
|
||||
case 'l':
|
||||
list_roots = 1;
|
||||
|
|
Loading…
Reference in a new issue