about summary refs log tree commit diff
path: root/command.c
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-02-08 21:50:29 -0500
committerJune McEnroe <june@causal.agency>2020-02-08 21:50:29 -0500
commitaf14947103775fa0251a1a1d96a9e8cae73141c9 (patch)
tree8981d188e2f19dca728880e946280a8cc2fde5db /command.c
parentAdd /copy (diff)
downloadcatgirl-af14947103775fa0251a1a1d96a9e8cae73141c9.tar.gz
catgirl-af14947103775fa0251a1a1d96a9e8cae73141c9.zip
Trim whitespace from both ends of command params
Diffstat (limited to 'command.c')
-rw-r--r--command.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/command.c b/command.c
index feb52b7..f88a6d5 100644
--- a/command.c
+++ b/command.c
@@ -223,6 +223,12 @@ void command(size_t id, char *input) {
 			cmd, Commands, ARRAY_LEN(Commands), sizeof(*handler), compar
 		);
 		if (handler) {
+			if (input) {
+				input += strspn(input, " ");
+				size_t len = strlen(input);
+				while (input[len - 1] == ' ') input[--len] = '\0';
+				if (!input[0]) input = NULL;
+			}
 			if (input && !input[0]) input = NULL;
 			handler->fn(id, input);
 		} else {