From: Francisco Jerez Date: Fri, 25 Nov 2011 13:37:07 +0000 (+0100) Subject: gallium/util: Define util_strchrnul. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0a62af3bcc530a6d09130368055c64263ba48848;p=mesa.git gallium/util: Define util_strchrnul. Reviewed-by: Jakob Bornecrantz --- diff --git a/src/gallium/auxiliary/util/u_string.h b/src/gallium/auxiliary/util/u_string.h index cc7992d7391..ed15981f1a5 100644 --- a/src/gallium/auxiliary/util/u_string.h +++ b/src/gallium/auxiliary/util/u_string.h @@ -48,6 +48,21 @@ extern "C" { #endif +#ifdef _GNU_SOURCE + +#define util_strchrnul strchrnul + +#else + +static INLINE char * +util_strchrnul(const char *s, char c) +{ + for (; *s && *s != c; ++s); + + return (char *)s; +} + +#endif #ifdef WIN32 @@ -72,12 +87,9 @@ util_sprintf(char *str, const char *format, ...) static INLINE char * util_strchr(const char *s, char c) { - while(*s) { - if(*s == c) - return (char *)s; - ++s; - } - return NULL; + char *p = util_strchrnul(s, c); + + return *p ? p : NULL; } static INLINE char*