Root/
Source at commit 1077 created 13 years 1 month ago. By azimutz, Removing this info from DEBUG's realm. This will be enabled by default until i gather enough feedback to decide whether it will stay On or Off by default. This info display, is only available on Gui; ShowInfo=No disables it. For the Gui minimalist, "Boot Banner"=No also disables it. Ok, "house cleaning" is suspended until i figure out what Meklort's cooking over at that new branch... "rewrite" :-o just the name sounds scary :-D | |
---|---|
1 | /*␊ |
2 | * strpbrk␊ |
3 | */␊ |
4 | ␊ |
5 | #include <limits.h>␊ |
6 | #include "libsaio.h"␊ |
7 | #include "strxspn.h"␊ |
8 | ␊ |
9 | ␊ |
10 | ␊ |
11 | ␊ |
12 | size_t __strxspn(const char *s, const char *map, int parity)␊ |
13 | {␊ |
14 | ␉char matchmap[UCHAR_MAX + 1];␊ |
15 | ␉size_t n = 0;␊ |
16 | ␊ |
17 | ␉/* Create bitmap */␊ |
18 | ␉memset(matchmap, 0, sizeof matchmap);␊ |
19 | ␉while (*map)␊ |
20 | ␉␉matchmap[(unsigned char)*map++] = 1;␊ |
21 | ␊ |
22 | ␉/* Make sure the null character never matches */␊ |
23 | ␉matchmap[0] = parity;␊ |
24 | ␊ |
25 | ␉/* Calculate span length */␊ |
26 | ␉while (matchmap[(unsigned char)*s++] ^ parity)␊ |
27 | ␉␉n++;␊ |
28 | ␊ |
29 | ␉return n;␊ |
30 | }␊ |
31 |