From 52847a951802fda7a3ce36cdac77c34914b0ccca Mon Sep 17 00:00:00 2001 From: nicm Date: Sun, 15 Jan 2017 22:00:56 +0000 Subject: It is silly for cmd_list_parse to return an integer error when it could just return NULL. --- cmd-string.c | 40 ++++++++++------------------------------ 1 file changed, 10 insertions(+), 30 deletions(-) (limited to 'cmd-string.c') diff --git a/cmd-string.c b/cmd-string.c index 7c6d9ad6..1b96b280 100644 --- a/cmd-string.c +++ b/cmd-string.c @@ -54,32 +54,17 @@ cmd_string_ungetc(size_t *p) (*p)--; } -/* - * Parse command string. Returns -1 on error. If returning -1, cause is error - * string, or NULL for empty command. - */ -int -cmd_string_parse(const char *s, struct cmd_list **cmdlist, const char *file, - u_int line, char **cause) +struct cmd_list * +cmd_string_parse(const char *s, const char *file, u_int line, char **cause) { - size_t p; - int ch, i, argc, rval; - char **argv, *buf, *t; - const char *whitespace, *equals; - size_t len; - - argv = NULL; - argc = 0; - - buf = NULL; - len = 0; + size_t p = 0; + int ch, i, argc = 0; + char **argv = NULL, *buf = NULL, *t; + const char *whitespace, *equals; + size_t len = 0; + struct cmd_list *cmdlist = NULL; *cause = NULL; - - *cmdlist = NULL; - rval = -1; - - p = 0; for (;;) { ch = cmd_string_getc(s, &p); switch (ch) { @@ -133,12 +118,7 @@ cmd_string_parse(const char *s, struct cmd_list **cmdlist, const char *file, if (argc == 0) goto out; - *cmdlist = cmd_list_parse(argc, argv, file, line, - cause); - if (*cmdlist == NULL) - goto out; - - rval = 0; + cmdlist = cmd_list_parse(argc, argv, file, line, cause); goto out; case '~': if (buf == NULL) { @@ -171,7 +151,7 @@ out: free(argv); } - return (rval); + return (cmdlist); } static void -- cgit