fix wcsncpy writing past end of buffer
authorRich Felker <dalias@aerifal.cx>
Mon, 23 May 2011 01:54:42 +0000 (21:54 -0400)
committerRich Felker <dalias@aerifal.cx>
Mon, 23 May 2011 01:54:42 +0000 (21:54 -0400)
src/string/wcsncpy.c

index 0164208..9f68a00 100644 (file)
@@ -3,7 +3,7 @@
 wchar_t *wcsncpy(wchar_t *d, const wchar_t *s, size_t n)
 {
        wchar_t *a = d;
-       while (n && (*d++ = *s++)) n--;
+       for (; n && (*d = *s); n--, d++, s++);
        wmemset(d, 0, n);
        return a;
 }