about summary refs log tree commit diff
path: root/stdio-common/vfprintf.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1996-12-04 01:41:39 +0000
committerUlrich Drepper <drepper@redhat.com>1996-12-04 01:41:39 +0000
commit4770745624b7f7f25623f1f10d46a4c4d6aec25c (patch)
tree0b278b62f5486313ca69360800755575487fb0f8 /stdio-common/vfprintf.c
parentd88554f033adab5d22b9860fc36bc3cb37f39b02 (diff)
downloadglibc-4770745624b7f7f25623f1f10d46a4c4d6aec25c.tar.gz
glibc-4770745624b7f7f25623f1f10d46a4c4d6aec25c.tar.xz
glibc-4770745624b7f7f25623f1f10d46a4c4d6aec25c.zip
update from main archive 961203
Tue Dec  3 08:38:15 1996  Richard Henderson  <rth@tamu.edu>

	* sysdeps/unix/alpha/sysdep.S: Remove definition of __errno_location.
	Reformat copyright.

	* elf/rtld.c (_dl_start): Don't dereference the value returned by
	elf_machine_got to get _DYNAMIC, instead call new function
	elf_machine_dynamic.
	* sysdeps/alpha/dl-machine.h: Permute elf_machine_got to
	elf_machine_dynamic.  Reformat copyright.
	* sysdeps/i386/dl-machine.h: Likewise.
	* sysdeps/m68k/dl-machine.h: Likewise.
	* sysdeps/mips/dl-machine.h: Likewise.
	* sysdeps/sparc/dl-machine.h: Likewise.
	* sysdeps/stub/dl-machine.h: Likewise.

Tue Oct 15 23:46:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* MakeTAGS (sysdep_dirs): Include add-on sysdep directories.

Tue Dec  3 02:06:18 1996  Ulrich Drepper  <drepper@cygnus.com>

	* Makerules ($(libdir)/libc.so): Make first line of generated
	link script contain `/* GNU ld script'.  This will be used in
	ldconfig to check for linker scripts.
	* sysdeps/mach/hurd/libc-ldscript: Likewise.
	* sysdeps/mach/hurd/libc_p-ldscript: Likewise.

	* stdlib/getsubopt.c: Update copyright.  Correct typo in comment.
Diffstat (limited to 'stdio-common/vfprintf.c')
-rw-r--r--stdio-common/vfprintf.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c
index 2da898817d..f458ce25e4 100644
--- a/stdio-common/vfprintf.c
+++ b/stdio-common/vfprintf.c
@@ -210,6 +210,9 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap)
   /* Count number of specifiers we already processed.  */
   int nspecs_done;
 
+  /* For the %m format we may need the current `errno' value.  */
+  int save_errno = errno;
+
 
   /* This table maps a character into a number representing a
      class.  In each step there is a destination label for each
@@ -849,7 +852,7 @@ vfprintf (FILE *s, const CHAR_T *format, va_list ap)
 	extern char *_strerror_internal __P ((int, char *buf, size_t));	      \
 									      \
 	string = (char *)						      \
-	  _strerror_internal (errno, work_buffer, sizeof work_buffer);	      \
+	  _strerror_internal (save_errno, work_buffer, sizeof work_buffer);   \
       }									      \
       is_long = 0;		/* This is no wide-char string.  */	      \
       goto LABEL (print_string)