- clear_tarlong (tape_length_option);
- add_to_tarlong (tape_length_option, intconv (optarg));
- mult_tarlong (tape_length_option, 1024);
- multi_volume_option = 1;
+ {
+ unsigned long u;
+ if (xstrtoul (optarg, (char **) 0, 10, &u, "") != LONG_MAX)
+ USAGE_ERROR ((0, 0, _("Invalid tape length")));
+ clear_tarlong (tape_length_option);
+ add_to_tarlong (tape_length_option, u);
+ mult_tarlong (tape_length_option, 1024);
+ multi_volume_option = 1;
+ }