summaryrefslogtreecommitdiff
path: root/client
diff options
context:
space:
mode:
authorJari Vetoniemi <mailroxas@gmail.com>2014-04-12 20:16:33 +0300
committerJari Vetoniemi <mailroxas@gmail.com>2014-04-12 20:16:33 +0300
commitd54381f00991669fa4ee4f3a8037f246ca1904f8 (patch)
tree6356280933b745b1598617b296b6a701f73939f5 /client
parente738ae17728c697d64beb9adb2dfcc921f864120 (diff)
downloadbemenu-d54381f00991669fa4ee4f3a8037f246ca1904f8.tar.gz
bemenu-d54381f00991669fa4ee4f3a8037f246ca1904f8.tar.bz2
bemenu-d54381f00991669fa4ee4f3a8037f246ca1904f8.zip
Fix out of bound access, and provide better tokenize api.
Diffstat (limited to 'client')
-rw-r--r--client/client.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/client/client.c b/client/client.c
index 8bc4be1..2f95d52 100644
--- a/client/client.c
+++ b/client/client.c
@@ -28,13 +28,15 @@ static void readItemsToMenuFromStdin(bmMenu *menu)
size_t pos;
char *s = buffer;
while ((pos = strcspn(s, "\n")) != 0) {
+ size_t next = pos + (s[pos] != 0);
s[pos] = 0;
+
bmItem *item = bmItemNew(s);
if (!item)
break;
bmMenuAddItem(menu, item);
- s += pos + 1;
+ s += next;
}
free(buffer);