diff --git a/src/string/memmem.c b/src/string/memmem.c index ce3cd190..58a21fcd 100644 --- a/src/string/memmem.c +++ b/src/string/memmem.c @@ -100,7 +100,7 @@ static char *twoway_memmem(const unsigned char *h, const unsigned char *z, const if (BITOP(byteset, h[l-1], &)) { k = l-shift[h[l-1]]; if (k) { - if (mem && k < p) k = l-p; + if (k < mem) k = mem; h += k; mem = 0; continue; diff --git a/src/string/strstr.c b/src/string/strstr.c index c7d66682..55ba1c7b 100644 --- a/src/string/strstr.c +++ b/src/string/strstr.c @@ -109,7 +109,7 @@ static char *twoway_strstr(const unsigned char *h, const unsigned char *n) if (BITOP(byteset, h[l-1], &)) { k = l-shift[h[l-1]]; if (k) { - if (mem && k < p) k = l-p; + if (k < mem) k = mem; h += k; mem = 0; continue;