X-Git-Url: https://git.xinqibao.xyz/dmenu.git/blobdiff_plain/cd2133a5f66b42f992a9a1b92bbbce11dc26b941..c4b656e0da36070a834b03ceb76269ffee8ac952:/dmenu.c?ds=sidebyside diff --git a/dmenu.c b/dmenu.c index 98507d9..d95e6c6 100644 --- a/dmenu.c +++ b/dmenu.c @@ -103,13 +103,20 @@ cleanup(void) } static char * -cistrstr(const char *s, const char *sub) +cistrstr(const char *h, const char *n) { - size_t len; + size_t i; + + if (!n[0]) + return (char *)h; - for (len = strlen(sub); *s; s++) - if (!strncasecmp(s, sub, len)) - return (char *)s; + for (; *h; ++h) { + for (i = 0; n[i] && tolower((unsigned char)n[i]) == + tolower((unsigned char)h[i]); ++i) + ; + if (n[i] == '\0') + return (char *)h; + } return NULL; }