From fcdfc43e1ff49b58d2a0b85d5f4beee634906ca6 Mon Sep 17 00:00:00 2001 From: "adam@algroup.co.uk" Date: Sun, 7 Mar 2010 15:25:48 +0000 Subject: [PATCH] strip trailing space(s) (may have been added by readline) --- client/cmdparser.c | 6 ++++-- client/cmdparser.h | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/client/cmdparser.c b/client/cmdparser.c index 4f6e2463..1afeb930 100644 --- a/client/cmdparser.c +++ b/client/cmdparser.c @@ -26,7 +26,7 @@ void CmdsHelp(const command_t Commands[]) } } -void CmdsParse(const command_t Commands[], const char *Cmd) +void CmdsParse(const command_t Commands[], char *Cmd) { char cmd_name[32]; int len = 0; @@ -53,9 +53,11 @@ void CmdsParse(const command_t Commands[], const char *Cmd) if (Commands[i].Name) { while (Cmd[len] == ' ') ++len; + while (Cmd[strlen(Cmd) - 1] == ' ') + Cmd[strlen(Cmd) - 1] = '\0'; Commands[i].Parse(Cmd + len); } else { - // show help (always first in array) for selected hierarchy or if command not recognised + // show help for selected hierarchy or if command not recognised CmdsHelp(Commands); } } diff --git a/client/cmdparser.h b/client/cmdparser.h index 28c2e66e..1002df8b 100644 --- a/client/cmdparser.h +++ b/client/cmdparser.h @@ -24,6 +24,6 @@ typedef struct command_s // Print help for each command in the command array void CmdsHelp(const command_t Commands[]); // Parse a command line -void CmdsParse(const command_t Commands[], const char *Cmd); +void CmdsParse(const command_t Commands[], char *Cmd); #endif -- 2.39.5