git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5811 54d463be-8e91-2dee-dedb-b68131a5f0ec

This commit is contained in:
Lance 2006-03-30 14:57:36 +00:00
parent 3e2fb9c9b0
commit 9eff393b23
2 changed files with 38 additions and 0 deletions

View File

@ -136,3 +136,36 @@ char *trim(char *str, const char *delim)
strcpy(str,buf);
return str;
}
#ifdef _WIN32
char *athena_strtok_r (char *s, const char *delim, char **save_ptr)
{
char *token;
if (s == NULL)
s = *save_ptr;
/* Scan leading delimiters. */
s += strspn (s, delim);
if (*s == '\0')
{
*save_ptr = s;
return NULL;
}
/* Find the end of the token. */
token = s;
s = strpbrk (token, delim);
if (s == NULL)
/* This token finishes the string. */
/* *save_ptr = __rawmemchr (token, '\0'); */
*save_ptr = token + strlen (token);
else
{
/* Terminate the token and make *SAVE_PTR point past it. */
*s = '\0';
*save_ptr = s + 1;
}
return token;
}
#endif

View File

@ -11,6 +11,11 @@ char* jstrescape (char* pt);
char* jstrescapecpy (char* pt,char* spt);
int jmemescapecpy (char* pt,char* spt, int size);
#if !defined(HAVE_mit_thread) && !defined(HAVE_STRTOK_R)
#define strtok_r(s,delim,save_ptr) athena_strtok_r(s,delim,save_ptr)
char *athena_strtok_r (char *s, const char *delim, char **save_ptr);
#endif
// custom functions
int remove_control_chars(unsigned char *);
char *trim(char *str, const char *delim);