From 287081caeb571486a0381ee9964198855706a208 Mon Sep 17 00:00:00 2001 From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= Date: Sat, 24 May 2008 12:15:26 +0300 Subject: [PATCH] Inline strnlen() and use it --- include/vlc_common.h | 1 - include/vlc_fixups.h | 15 +++++++++------ src/extras/libc.c | 11 ----------- src/libvlccore.sym | 1 - 4 files changed, 9 insertions(+), 19 deletions(-) diff --git a/include/vlc_common.h b/include/vlc_common.h index b4d777a81b..99166d4fba 100644 --- a/include/vlc_common.h +++ b/include/vlc_common.h @@ -723,7 +723,6 @@ VLC_EXPORT( int, vlc_vasprintf, (char **, const char *, va_list ) ); VLC_EXPORT( int, vlc_asprintf, (char **, const char *, ... ) ATTRIBUTE_FORMAT( 2, 3 ) ); VLC_EXPORT( size_t, vlc_strlcpy, ( char *, const char *, size_t ) ); VLC_EXPORT( int64_t, vlc_strtoll, ( const char *nptr, char **endptr, int base ) ); -VLC_EXPORT( size_t, vlc_strnlen, ( const char *, size_t ) ); struct dirent; VLC_EXPORT( int, vlc_scandir, ( const char *name, struct dirent ***namelist, int (*filter) ( const struct dirent * ), int (*compar) ( const struct dirent **, const struct dirent ** ) ) ); diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h index 3f185ab0c6..cd7dc8288a 100644 --- a/include/vlc_fixups.h +++ b/include/vlc_fixups.h @@ -47,11 +47,18 @@ static inline char *strdup (const char *str) # define asprintf vlc_asprintf #endif +#ifndef HAVE_STRNLEN +static inline size_t strnlen (const char *str, size_t max) +{ + const char *end = memchr (str, 0, max); + return end ? (size_t)(end - str) : max; +} +#endif + #ifndef HAVE_STRNDUP static inline char *strndup (const char *str, size_t max) { - const char *end = memchr (str, '\0', max); - size_t len = end ? (size_t)(end - str) : max; + size_t len = strnlen (str, max); char *res = malloc (len + 1); if (res) { @@ -62,10 +69,6 @@ static inline char *strndup (const char *str, size_t max) } #endif -#ifndef HAVE_STRNLEN -# define strnlen vlc_strnlen -#endif - #ifndef HAVE_STRLCPY # define strlcpy vlc_strlcpy #endif diff --git a/src/extras/libc.c b/src/extras/libc.c index 3e537ad78f..0c100397ba 100644 --- a/src/extras/libc.c +++ b/src/extras/libc.c @@ -74,17 +74,6 @@ # define strcoll strcmp #endif -/***************************************************************************** - * strnlen: - *****************************************************************************/ -#if !defined( HAVE_STRNLEN ) -size_t vlc_strnlen( const char *psz, size_t n ) -{ - const char *psz_end = memchr( psz, 0, n ); - return psz_end ? (size_t)( psz_end - psz ) : n; -} -#endif - /***************************************************************************** * strcasecmp: compare two strings ignoring case *****************************************************************************/ diff --git a/src/libvlccore.sym b/src/libvlccore.sym index bad95ee7f4..24392c1dce 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -442,7 +442,6 @@ vlc_strcasecmp vlc_strcasestr vlc_strlcpy vlc_strncasecmp -vlc_strnlen vlc_strtoll vlc_submodule_create __vlc_thread_create -- 2.39.2