diff --git a/command.c b/command.c index de36e732..17c2dcb0 100644 --- a/command.c +++ b/command.c @@ -34,7 +34,6 @@ static gboolean _handle_command(const char * const command, const char * const inp); -static struct command_t _parse_command(char *str); static gboolean _cmd_quit(void); static gboolean _cmd_help(void); static gboolean _cmd_who(void); @@ -46,11 +45,6 @@ static gboolean _cmd_set_beep(const char * const inp); static gboolean _cmd_set_flash(const char * const inp); static gboolean _cmd_default(const char * const inp); -struct command_t { - char *command; - char **params; -}; - gboolean process_input(char *inp) { gboolean result = FALSE; @@ -63,8 +57,10 @@ gboolean process_input(char *inp) if (strlen(inp) == 0) { result = TRUE; } else if (inp[0] == '/') { - struct command_t cmd = _parse_command(inp); - result = _handle_command(cmd.command, inp); + char inp_cpy[strlen(inp) + 1]; + strcpy(inp_cpy, inp); + char *command = strtok(inp_cpy, " "); + result = _handle_command(command, inp); } else { result = _cmd_default(inp); } @@ -76,16 +72,6 @@ gboolean process_input(char *inp) return result; } -static struct command_t _parse_command(char *str) -{ - struct command_t cmd; - char **split = g_strsplit(str, " ", 0); - - cmd.command = split[0]; - cmd.params = NULL; - return cmd; -} - static gboolean _handle_command(const char * const command, const char * const inp) { gboolean result = FALSE;