Browse Source

wchar.h, _collate.c, strlcpy.c: use a common prototype of __wcslcpy

Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
Peter S. Mazinger 13 years ago
parent
commit
1350fdff4b
3 changed files with 10 additions and 18 deletions
  1. 5 0
      include/wchar.h
  2. 0 3
      libc/string/_collate.c
  3. 5 15
      libc/string/strlcpy.c

+ 5 - 0
include/wchar.h

@@ -783,6 +783,11 @@ libc_hidden_proto(wcsftime_l)
 # include <wctype.h>
 #endif
 
+#ifdef _LIBC
+extern size_t __wcslcpy(wchar_t *__restrict dst,
+			const wchar_t *__restrict src, size_t n) attribute_hidden;
+#endif
+
 __END_DECLS
 
 #endif	/* _WCHAR_H defined */

+ 0 - 3
libc/string/_collate.c

@@ -537,9 +537,6 @@ libc_hidden_def(__XL_NPP(wcscoll))
 
 #ifdef WANT_WIDE
 
-extern size_t __wcslcpy(wchar_t *__restrict dst,
-		const wchar_t *__restrict src, size_t n);
-
 size_t __XL_NPP(wcsxfrm)(wchar_t *__restrict ws1, const wchar_t *__restrict ws2,
 					 size_t n   __LOCALE_PARAM )
 {

+ 5 - 15
libc/string/strlcpy.c

@@ -9,19 +9,16 @@
 
 #ifdef WANT_WIDE
 # define Wstrlcpy __wcslcpy
+# define Wstrxfrm wcsxfrm
 #else
 # define Wstrlcpy strlcpy
+# define Wstrxfrm strxfrm
 #endif
 
 /* OpenBSD function:
  * Copy at most n-1 chars from src to dst and nul-terminate dst.
  * Returns strlen(src), so truncation occurred if the return value is >= n. */
 
-#ifdef WANT_WIDE
-size_t Wstrlcpy(register Wchar *__restrict dst,
-				  register const Wchar *__restrict src,
-				  size_t n) attribute_hidden;
-#endif
 size_t Wstrlcpy(register Wchar *__restrict dst,
 				  register const Wchar *__restrict src,
 				  size_t n)
@@ -45,17 +42,10 @@ size_t Wstrlcpy(register Wchar *__restrict dst,
 
 	return src - src0;
 }
-#ifdef WANT_WIDE
-
-#ifndef __UCLIBC_HAS_LOCALE__
-strong_alias(__wcslcpy,wcsxfrm)
-#endif
-
-#else
-
+#ifndef WANT_WIDE
 libc_hidden_def(strlcpy)
-#ifndef __UCLIBC_HAS_LOCALE__
-strong_alias(strlcpy,strxfrm)
 #endif
 
+#ifndef __UCLIBC_HAS_LOCALE__
+strong_alias(Wstrlcpy,Wstrxfrm)
 #endif