msvcrt: Implement wcsnlen.

Hans Leidekker hans at codeweavers.com
Wed Sep 29 02:57:52 CDT 2010


---
 dlls/msvcrt/msvcrt.spec |    2 +-
 dlls/msvcrt/wcs.c       |   12 ++++++++++++
 2 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index ccd3c6a..52a65d4 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -1444,7 +1444,7 @@
 @ cdecl wcsncmp(wstr wstr long) ntdll.wcsncmp
 @ cdecl wcsncpy(ptr wstr long) ntdll.wcsncpy
 @ cdecl wcsncpy_s(ptr long wstr long) MSVCRT_wcsncpy_s
-# stub wcsnlen
+@ cdecl wcsnlen(wstr long)
 @ cdecl wcspbrk(wstr wstr) MSVCRT_wcspbrk
 @ cdecl wcsrchr(wstr long) ntdll.wcsrchr
 # stub wcsrtombs
diff --git a/dlls/msvcrt/wcs.c b/dlls/msvcrt/wcs.c
index d192c23..b821ec8 100644
--- a/dlls/msvcrt/wcs.c
+++ b/dlls/msvcrt/wcs.c
@@ -1737,3 +1737,15 @@ unsigned __int64 CDECL MSVCRT__wcstoui64(const MSVCRT_wchar_t *nptr,
 {
     return MSVCRT__wcstoui64_l(nptr, endptr, base, NULL);
 }
+
+/******************************************************************
+ *  wcsnlen (MSVCRT.@)
+ */
+MSVCRT_size_t CDECL wcsnlen(const MSVCRT_wchar_t *s, MSVCRT_size_t maxlen)
+{
+    MSVCRT_size_t i;
+
+    for (i = 0; i < maxlen; i++)
+        if (!s[i]) break;
+    return i;
+}
-- 
1.7.0.4







More information about the wine-patches mailing list