1 #include <msvcrt/string.h>
2 #include <msvcrt/internal/tls.h>
4 wchar_t *wcstok(wchar_t *s
, const wchar_t *ct
)
9 PTHREADDATA ThreadData
= GetThreadData();
11 if (s
== NULL
&& (s
= ThreadData
->wlasttoken
) == NULL
)
15 * Skip (span) leading ctiters (s += strspn(s, ct), sort of).
20 for (spanp
= ct
; (sc
= *spanp
) != 0;spanp
++) {
25 if (c
== 0) { /* no non-ctiter characters */
26 ThreadData
->wlasttoken
= NULL
;
32 * Scan token (scan for ctiters: s += strcspn(s, ct), sort of).
33 * Note that ct must have one NUL; we stop if we see that, too.
40 if ((sc
= *spanp
) == c
) {
45 ThreadData
->wlasttoken
= s
;