mirror of
https://github.com/reactos/reactos.git
synced 2025-08-06 23:22:59 +00:00

- TSVN choked repeatedly when attempting to merge ~9000 revs into the branch (tried 3 times on 2 different computers) - If someone wants to delete aicom-network-fixes, they are welcome to - Lesson learned: Letting a branch get thousands of revs out of date is a horrible idea svn path=/branches/aicom-network-branch/; revision=44353
24 lines
531 B
C
24 lines
531 B
C
/* $Id$
|
|
*/
|
|
|
|
#include <limits.h>
|
|
#include <string.h>
|
|
|
|
size_t _strxspn(const char *s1, const char *s2)
|
|
{
|
|
unsigned char char_map[1 << CHAR_BIT * sizeof(char)];
|
|
const unsigned char * us2 = (const unsigned char *)s2;
|
|
const unsigned char * str = (const unsigned char *)s1;
|
|
|
|
memset(char_map, 0, sizeof(char_map));
|
|
|
|
for(; *us2; ++ us2)
|
|
char_map[*us2 / CHAR_BIT] |= (1 << (*us2 % CHAR_BIT));
|
|
|
|
for(; *str; ++ str)
|
|
if(_x(char_map[*str / CHAR_BIT] & (1 << (*str % CHAR_BIT)))) break;
|
|
|
|
return (size_t)str - (size_t)s1;
|
|
}
|
|
|
|
/* EOF */
|