blob: 5aa0fa61783022356da59d01353d95d0672ac45a [file] [log] [blame] [raw]
/* A part of the Native C Library for Windows NT
Copyright 2007-2015 PC GO Ld.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
*/
#include <string.h>
static char *old_token;
char *strtok(char *s, const char *delim) {
char *token;
if(!s) {
s = old_token;
if(!s) return NULL;
}
s += strspn (s, delim);
if(!*s) {
old_token = s;
return NULL;
}
token = s;
s = strpbrk(token, delim);
if(!s) old_token = token + strlen(token);
else {
*s = 0;
old_token = s + 1;
}
return token;
}