about summary refs log tree commit diff
path: root/wcsmbs/isoc99_fwscanf.c
diff options
context:
space:
mode:
authorZack Weinberg <zackw@panix.com>2018-03-07 14:31:59 -0500
committerGabriel F. T. Gomes <gabriel@inconstante.eti.br>2018-12-05 18:15:42 -0200
commitb87eb3f8feb826ac48463f598fc10476055bee5a (patch)
treef71f60fbd1a5340ca8d2a9015c813b04cf053036 /wcsmbs/isoc99_fwscanf.c
parent349718d4d7841df46bcc36df9bc2baef4c40d6f5 (diff)
downloadglibc-b87eb3f8feb826ac48463f598fc10476055bee5a.tar.gz
glibc-b87eb3f8feb826ac48463f598fc10476055bee5a.tar.xz
glibc-b87eb3f8feb826ac48463f598fc10476055bee5a.zip
Use SCANF_ISOC99_A instead of _IO_FLAGS2_SCANF_STD.
Change the callers of __vfscanf_internal and __vfwscanf_internal that
want C99-compliant behavior to communicate this via the new flags
argument, rather than setting bits on the FILE object.  This also
means these functions do not need to do their own locking.

Tested for powerpc and powerpc64le.
Diffstat (limited to 'wcsmbs/isoc99_fwscanf.c')
-rw-r--r--wcsmbs/isoc99_fwscanf.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/wcsmbs/isoc99_fwscanf.c b/wcsmbs/isoc99_fwscanf.c
index 00b07dd48e..5829607916 100644
--- a/wcsmbs/isoc99_fwscanf.c
+++ b/wcsmbs/isoc99_fwscanf.c
@@ -21,20 +21,15 @@
 #include <wchar.h>
 
 /* Read formatted input from STREAM according to the format string FORMAT.  */
-/* VARARGS2 */
 int
 __isoc99_fwscanf (FILE *stream, const wchar_t *format, ...)
 {
   va_list arg;
   int done;
 
-  _IO_acquire_lock_clear_flags2 (stream);
-  stream->_flags2 |= _IO_FLAGS2_SCANF_STD;
-
   va_start (arg, format);
-  done = __vfwscanf_internal (stream, format, arg, 0);
+  done = __vfwscanf_internal (stream, format, arg, SCANF_ISOC99_A);
   va_end (arg);
 
-  _IO_release_lock (stream);
   return done;
 }