summaryrefslogtreecommitdiffstats
path: root/client.c
diff options
context:
space:
mode:
authornicm <nicm>2019-05-25 07:18:20 +0000
committernicm <nicm>2019-05-25 07:18:20 +0000
commitf8d3d247d884a9dc0b23f2799944c15630cab28f (patch)
tree4d96106a16701c94bec7475d1fb2e188e207df80 /client.c
parent6b0fa14470df848ae0735a3e0bab393c241acb86 (diff)
Merge cmd_list_parse into cmd-parse.y so it can use the new alias
processing code.
Diffstat (limited to 'client.c')
-rw-r--r--client.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/client.c b/client.c
index 1054ccae..b376b038 100644
--- a/client.c
+++ b/client.c
@@ -215,14 +215,13 @@ client_exit_message(void)
int
client_main(struct event_base *base, int argc, char **argv, int flags)
{
+ struct cmd_parse_result *pr;
struct cmd *cmd;
- struct cmd_list *cmdlist;
struct msg_command_data *data;
int cmdflags, fd, i;
const char *ttynam, *cwd;
pid_t ppid;
enum msgtype msg;
- char *cause;
struct termios tio, saved_tio;
size_t size;
@@ -248,14 +247,15 @@ client_main(struct event_base *base, int argc, char **argv, int flags)
* later in server) but it is necessary to get the start server
* flag.
*/
- cmdlist = cmd_list_parse(argc, argv, NULL, 0, &cause);
- if (cmdlist != NULL) {
- TAILQ_FOREACH(cmd, &cmdlist->list, qentry) {
+ pr = cmd_parse_from_arguments(argc, argv, NULL);
+ if (pr->status == CMD_PARSE_SUCCESS) {
+ TAILQ_FOREACH(cmd, &pr->cmdlist->list, qentry) {
if (cmd->entry->flags & CMD_STARTSERVER)
cmdflags |= CMD_STARTSERVER;
}
- cmd_list_free(cmdlist);
- }
+ cmd_list_free(pr->cmdlist);
+ } else
+ free(pr->error);
}
/* Create client process structure (starts logging). */