summaryrefslogtreecommitdiff
path: root/lib/filter.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/filter.c')
-rw-r--r--lib/filter.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/filter.c b/lib/filter.c
index 811451b..204eac1 100644
--- a/lib/filter.c
+++ b/lib/filter.c
@@ -54,15 +54,15 @@ static char* _bmFilterTokenize(bmMenu *menu, char ***outTokv, unsigned int *outT
if (!(buffer = _bmStrdup(menu->filter)))
goto fail;
- size_t pos = 0;
+ size_t pos = 0, next;
unsigned int tokc = 0, tokn = 0;
char *s = buffer, **tmp = NULL;
- while ((pos = _bmStripToken(s, " ")) != 0) {
+ while ((pos = _bmStripToken(s, " ", &next)) > 0) {
if (++tokc > tokn && !(tmp = realloc(tmp, ++tokn * sizeof(char*))))
goto fail;
tmp[tokc - 1] = s;
- s += pos + 1;
+ s += next;
}
*outTokv = tmp;