diff --git a/src/kit/taosdump/taosdump.c b/src/kit/taosdump/taosdump.c index cca04f926b85623f317e349c28e49edbeb482009..ae2193a82eb447f0e948abc1757c21cab46ccf34 100644 --- a/src/kit/taosdump/taosdump.c +++ b/src/kit/taosdump/taosdump.c @@ -367,6 +367,15 @@ struct arguments g_args = { false // performance_print }; +static void errorPrintReqArg2(char *program, char *wrong_arg) +{ + fprintf(stderr, + "%s: option requires a number argument '-%s'\n", + program, wrong_arg); + fprintf(stderr, + "Try `taosdump --help' or `taosdump --usage' for more information.\n"); +} + static void errorPrintReqArg3(char *program, char *wrong_arg) { fprintf(stderr, @@ -396,6 +405,10 @@ static error_t parse_opt(int key, char *arg, struct argp_state *state) { case 'p': break; case 'P': + if (!isStringNumber(arg)) { + errorPrintReqArg2("taosdump", "P"); + exit(EXIT_FAILURE); + } g_args.port = atoi(arg); break; case 'q':