diff --git a/src/posix.h b/src/posix.h index 14c92b93d..f529914fe 100644 --- a/src/posix.h +++ b/src/posix.h @@ -89,7 +89,12 @@ extern struct tm * p_gmtime_r (const time_t *timer, struct tm *result); # include "unix/posix.h" #endif -#ifndef __MINGW32__ +#if defined(__MINGW32__) || defined(__sun) +GIT_INLINE(size_t) p_strnlen(const char *s, size_t maxlen) { + const char *end = memchr(s, 0, maxlen); + return end ? (size_t)(end - s) : maxlen; +} +#else # define p_strnlen strnlen #endif diff --git a/src/win32/mingw-compat.h b/src/win32/mingw-compat.h index fe0abfb54..7b97b48db 100644 --- a/src/win32/mingw-compat.h +++ b/src/win32/mingw-compat.h @@ -19,11 +19,6 @@ # define S_IFLNK _S_IFLNK # define S_ISLNK(m) (((m) & _S_IFMT) == _S_IFLNK) -GIT_INLINE(size_t) p_strnlen(const char *s, size_t maxlen) { - const char *end = memchr(s, 0, maxlen); - return end ? (size_t)(end - s) : maxlen; -} - #endif #endif /* INCLUDE_mingw_compat__ */