xref: /reactos/sdk/lib/crt/mbstring/mbspbrk.c (revision 1734f297)
1 #include <stdlib.h>
2 #include <mbstring.h>
3 
4 int isleadbyte(int byte);
5 
6 /*
7  * not correct
8  *
9  * @implemented
10  */
11 unsigned char * _mbspbrk(const unsigned char *s1, const unsigned char *s2)
12 {
13   const unsigned char* p;
14 
15   while (*s1)
16   {
17     for (p = s2; *p; p += (isleadbyte(*p) ? 2 : 1))
18     {
19       if (*p == *s1)
20         if (!isleadbyte(*p) || (*(p+1) == *(s1 + 1)))
21           return (unsigned char*)s1;
22     }
23     s1 += (isleadbyte(*s1) ? 2 : 1);
24   }
25   return NULL;
26 }
27