[v0.21] Small improvement to argument error reporting

This commit is contained in:
Dr-Noob
2021-12-28 16:09:39 +01:00
parent 9d2a07146a
commit 7ed0e4a63d

View File

@@ -78,20 +78,16 @@ int getarg_int(char* str) {
return -1; return -1;
} }
void print_getarg_error() { const char* getarg_error() {
switch (errn) { switch (errn) {
case OVERFLOW: case OVERFLOW:
printf("overflow detected while parsing the arguments\n"); return "overflow detected";
break;
case UNDERFLOW: case UNDERFLOW:
printf("underflow detected while parsing the arguments\n"); return "underflow detected";
break;
case INVALID_ARG: case INVALID_ARG:
printf("invalid argument\n"); return "invalid argument";
break;
default: default:
printf("invalid error: %d\n", errn); return "invalid error";
break;
} }
} }
@@ -233,8 +229,7 @@ bool parse_args(int argc, char* argv[]) {
else if(opt == args_chr[ARG_GPU]) { else if(opt == args_chr[ARG_GPU]) {
args.gpu_idx = getarg_int(optarg); args.gpu_idx = getarg_int(optarg);
if(errn != 0) { if(errn != 0) {
printErr("Option %s: ", args_str[ARG_GPU]); printErr("Option %s: %s", args_str[ARG_GPU], getarg_error());
print_getarg_error();
args.help_flag = true; args.help_flag = true;
return false; return false;
} }