about summary refs log tree commit diff
path: root/command.c
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-03-23 15:47:56 -0400
committerJune McEnroe <june@causal.agency>2020-03-23 15:47:56 -0400
commit35ae4121cba51d2d9a6aeecd076b0c20b4c7a0b3 (patch)
tree5f80634e0a3f500d48dc8ce13f432e32ab14dfa9 /command.c
parentAdd M-Enter to insert a newline (diff)
downloadcatgirl-35ae4121cba51d2d9a6aeecd076b0c20b4c7a0b3.tar.gz
catgirl-35ae4121cba51d2d9a6aeecd076b0c20b4c7a0b3.zip
Fix non-multiline command newline handling
Diffstat (limited to 'command.c')
-rw-r--r--command.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/command.c b/command.c
index 1d1a87b..5da8bb9 100644
--- a/command.c
+++ b/command.c
@@ -465,12 +465,11 @@ void command(uint id, char *input) {
 		uiFormat(id, Warm, NULL, "Command %s is restricted", cmd);
 		return;
 	}
-	if (!(handler->flags & Multiline)) {
-		char *nl = strchr(input, '\n');
-		if (nl) *nl = '\0';
-	}
 
 	if (input) {
+		if (!(handler->flags & Multiline)) {
+			input[strcspn(input, "\n")] = '\0';
+		}
 		input += strspn(input, " ");
 		size_t len = strlen(input);
 		while (input[len - 1] == ' ') input[--len] = '\0';