about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2015-12-04 15:23:18 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2015-12-04 15:24:35 -0800
commit5d1d4918eebdaaf0ab0a5baf28c502c32c21f12e (patch)
treebd42c16f33aa8d368d998cf6302c51be02c2725c
parent8f5e8b01a1da2a207228f2072c934fa5918554b8 (diff)
downloadglibc-5d1d4918eebdaaf0ab0a5baf28c502c32c21f12e.tar.gz
glibc-5d1d4918eebdaaf0ab0a5baf28c502c32c21f12e.tar.xz
glibc-5d1d4918eebdaaf0ab0a5baf28c502c32c21f12e.zip
Fix typo in strncat, wcsncat manual entries
* manual/string.texi (Copying and Concatenation): Fix typos in
sample implementations of strncat and wcsncat, by having them use
the old value of the destination length, not the new one.
-rw-r--r--ChangeLog7
-rw-r--r--manual/string.texi10
2 files changed, 13 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index edd7ccf33a..379ba75ee1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2015-12-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+	Fix typo in strncat, wcsncat manual entries
+	* manual/string.texi (Copying and Concatenation): Fix typos in
+	sample implementations of strncat and wcsncat, by having them use
+	the old value of the destination length, not the new one.
+
 2015-12-04  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #16961]
diff --git a/manual/string.texi b/manual/string.texi
index 4f276a95ae..8f0f5fa1d2 100644
--- a/manual/string.texi
+++ b/manual/string.texi
@@ -996,8 +996,9 @@ The @code{strncat} function could be implemented like this:
 char *
 strncat (char *to, const char *from, size_t size)
 @{
-  memcpy (to + strlen (to), from, strnlen (from, size));
-  to[strlen (to) + strnlen (from, size)] = '\0';
+  size_t len = strlen (to);
+  memcpy (to + len, from, strnlen (from, size));
+  to[len + strnlen (from, size)] = '\0';
   return to;
 @}
 @end group
@@ -1025,8 +1026,9 @@ wchar_t *
 wcsncat (wchar_t *restrict wto, const wchar_t *restrict wfrom,
          size_t size)
 @{
-  memcpy (wto + wcslen (wto), wfrom, wcsnlen (wfrom, size) * sizeof (wchar_t));
-  wto[wcslen (to) + wcsnlen (wfrom, size)] = '\0';
+  size_t len = wcslen (wto);
+  memcpy (wto + len, wfrom, wcsnlen (wfrom, size) * sizeof (wchar_t));
+  wto[len + wcsnlen (wfrom, size)] = L'\0';
   return wto;
 @}
 @end group