BZ #431 Fix manual of strncat/wcsncat.

This commit is contained in:
Ondřej Bílka 2013-10-03 19:53:45 +02:00
parent 5f855e3598
commit b1fe1f2b83
3 changed files with 15 additions and 9 deletions

View File

@ -1,3 +1,8 @@
2013-10-03 Ondřej Bílka <neleai@seznam.cz>
[BZ #431]
* manual/string.texi: Fix strncat and wcsncat.
2013-10-03 Brooks Moses <bmoses@google.com> 2013-10-03 Brooks Moses <bmoses@google.com>
[BZ #15915] [BZ #15915]

11
NEWS
View File

@ -9,11 +9,12 @@ Version 2.19
* The following bugs are resolved with this release: * The following bugs are resolved with this release:
13985, 14155, 14547, 14699, 15048, 15400, 15427, 15522, 15531, 15532, 431, 13985, 14155, 14547, 14699, 15048, 15400, 15427, 15522, 15531,
15608, 15609, 15610, 15640, 15681, 15736, 15748, 15749, 15754, 15760, 15532, 15608, 15609, 15610, 15640, 15681, 15736, 15748, 15749, 15754,
15797, 15844, 15849, 15855, 15856, 15857, 15859, 15867, 15886, 15887, 15760, 15797, 15844, 15849, 15855, 15856, 15857, 15859, 15867, 15886,
15890, 15892, 15893, 15895, 15897, 15905, 15909, 15919, 15921, 15923, 15887, 15890, 15892, 15893, 15895, 15897, 15905, 15909, 15919, 15921,
15939, 15963, 15966, 15988. 15887, 15890, 15892, 15893, 15895, 15897, 15905, 15909, 15919, 15921,
15923, 15939, 15963, 15966, 15988.
* CVE-2012-4412 The strcoll implementation caches indices and rules for * CVE-2012-4412 The strcoll implementation caches indices and rules for
large collation sequences to optimize multiple passes. This cache large collation sequences to optimize multiple passes. This cache

View File

@ -955,8 +955,8 @@ The @code{strncat} function could be implemented like this:
char * char *
strncat (char *to, const char *from, size_t size) strncat (char *to, const char *from, size_t size)
@{ @{
to[strlen (to) + size] = '\0'; memcpy (to + strlen (to), from, strnlen (from, size));
strncpy (to + strlen (to), from, size); to[strlen (to) + strnlen (from, size)] = '\0';
return to; return to;
@} @}
@end group @end group
@ -982,8 +982,8 @@ wchar_t *
wcsncat (wchar_t *restrict wto, const wchar_t *restrict wfrom, wcsncat (wchar_t *restrict wto, const wchar_t *restrict wfrom,
size_t size) size_t size)
@{ @{
wto[wcslen (to) + size] = L'\0'; memcpy (wto + wcslen (wto), wfrom, wcsnlen (wfrom, size) * sizeof (wchar_t));
wcsncpy (wto + wcslen (wto), wfrom, size); wto[wcslen (to) + wcsnlen (wfrom, size)] = '\0';
return wto; return wto;
@} @}
@end group @end group