Commit ca1fba51156b88108e6686ef7b95d9f833ac5bc1

Vicent Martí 2013-11-27T05:36:13

Merge pull request #1974 from ghedo/strnlen posix: Solaris doesn't have strnlen either

diff --git a/src/posix.h b/src/posix.h
index 14c92b9..f529914 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 fe0abfb..7b97b48 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__ */