mailing list of musl libc
 help / color / mirror / code / Atom feed
* wcsncpy bug
@ 2011-05-23  1:25 Szabolcs Nagy
  2011-05-23  1:51 ` Rich Felker
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Szabolcs Nagy @ 2011-05-23  1:25 UTC (permalink / raw)
  To: musl

[-- Attachment #1: Type: text/plain, Size: 102 bytes --]

wcsncpy(d,s,n) did not decrease n while copying the '\0'
so when s[0]=0 and n=1 it wrote 2 zeros to d

[-- Attachment #2: wcsncpy.diff --]
[-- Type: text/x-diff, Size: 337 bytes --]

diff --git a/src/string/wcsncpy.c b/src/string/wcsncpy.c
index 0164208..fbd0631 100644
--- a/src/string/wcsncpy.c
+++ b/src/string/wcsncpy.c
@@ -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--;
+	while (n-- && (*d++ = *s++));
 	wmemset(d, 0, n);
 	return a;
 }

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2011-05-23  2:16 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-23  1:25 wcsncpy bug Szabolcs Nagy
2011-05-23  1:51 ` Rich Felker
2011-05-23  2:00 ` Rich Felker
2011-05-23  2:16   ` Szabolcs Nagy
2011-05-23  2:10 ` Szabolcs Nagy

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).