about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--stdio-common/vfprintf.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index ec9d9fe5ab..7628ebfac9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+1999-08-17  Ulrich Drepper  <drepper@cygnus.com>
+
+	* stdio-common/vfprintf.c (process_string_arg): Correct last patch
+	and write correct number of bytes in case of %ls with precision.
+	Reported by Shinya Hanataka <hanataka@abyss.rim.or.jp>.
+
 1999-08-16  Ulrich Drepper  <drepper@cygnus.com>
 
 	* nscd/nscd.init: Test for kernel version and make LSB compliant.
diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c
index 780ac76c0d..d45e7d96fc 100644
--- a/stdio-common/vfprintf.c
+++ b/stdio-common/vfprintf.c
@@ -1109,8 +1109,8 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap)
 	    if (prec > 0)						      \
 	      {								      \
 		/* The string `s2' might not be NUL terminated.  */	      \
-		string = (char *) alloca (prec + 1);			      \
-		len = __wcsrtombs (string, &s2, prec + 1, &mbstate);	      \
+		string = (char *) alloca (prec);			      \
+		len = __wcsrtombs (string, &s2, prec, &mbstate);	      \
 	      }								      \
 	    else							      \
 	      {								      \