Commit e2123909 authored by Laurent Aimar's avatar Laurent Aimar

Implemented strsep replacement.

parent bbebf410
......@@ -755,6 +755,7 @@ VLC_EXPORT( size_t, vlc_strlcpy, ( char *, const char *, size_t ) );
VLC_EXPORT( long long, vlc_strtoll, ( const char *nptr, char **endptr, int base ) );
VLC_EXPORT( char *, vlc_strcasestr, ( const char *s1, const char *s2 ) );
VLC_EXPORT( char *, vlc_strsep, ( char **, const char * ) );
#if defined(WIN32) || defined(UNDER_CE)
/* win32, cl and icl support */
......
......@@ -108,6 +108,10 @@ static inline char *strndup (const char *str, size_t max)
# define strtoll vlc_strtoll
#endif
#ifndef HAVE_STRSEP
# define strsep vlc_strsep
#endif
#ifndef HAVE_ATOLL
# define atoll( str ) (strtoll ((str), (char **)NULL, 10))
#endif
......
......@@ -208,6 +208,28 @@ extern size_t vlc_strlcpy (char *tgt, const char *src, size_t bufsize)
#endif
}
/**
* Extract a token from string.
* It is a replacement for strsep if not present.
*/
char *vlc_strsep( char **ppsz_string, const char *psz_delimiters )
{
char *psz_string = *ppsz_string;
if( !psz_string )
return NULL;
char *p = strpbrk( psz_string, psz_delimiters );
if( !p )
{
*ppsz_string = NULL;
return psz_string;
}
*p++ = '\0';
*ppsz_string = p;
return psz_string;
}
/*****************************************************************************
* vlc_*dir_wrapper: wrapper under Windows to return the list of drive letters
* when called with an empty argument or just '\'
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment