summary refs log tree commit diff
diff options
context:
space:
mode:
authorMichael Forney <mforney@mforney.org>2019-11-20 01:45:52 -0800
committerJune McEnroe <june@causal.agency>2019-11-21 16:26:43 -0500
commita17b38979617e8799da58be83699ea64dbed4503 (patch)
tree733efa3d1dca865f56629560e3abc5e98eb7920d
parentDeclare globals as extern in headers, and define in source file (diff)
downloadpounce-a17b38979617e8799da58be83699ea64dbed4503.tar.gz
pounce-a17b38979617e8799da58be83699ea64dbed4503.zip
Fix wordcmp return value when the words have differing lengths
Otherwise, the result of strncmp gets converted size_t, since size_t
has greater rank than int.

Since wordcmp is only ever used as a boolean condition, this poses
no real issue, but presumably, it is meant to behave like the other
*cmp function and return a value less than, equal to, or greater
than 0 depending on the result of the comparison.
-rw-r--r--client.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/client.c b/client.c
index 9ff192e..9be5a62 100644
--- a/client.c
+++ b/client.c
@@ -294,7 +294,7 @@ static int wordcmp(const char *line, size_t i, const char *word) {
 	size_t len = strcspn(line, " ");
 	return len == strlen(word)
 		? strncmp(line, word, len)
-		: len - strlen(word);
+		: (int)len - (int)strlen(word);
 }
 
 static size_t strlcpyn(char *dst, const char *src, size_t cap, size_t len) {