aboutsummaryrefslogtreecommitdiff
path: root/stdio-common
diff options
context:
space:
mode:
Diffstat (limited to 'stdio-common')
-rw-r--r--stdio-common/isoc99_fscanf.c7
-rw-r--r--stdio-common/isoc99_scanf.c12
-rw-r--r--stdio-common/isoc99_sscanf.c3
-rw-r--r--stdio-common/isoc99_vfscanf.c9
-rw-r--r--stdio-common/isoc99_vscanf.c9
-rw-r--r--stdio-common/isoc99_vsscanf.c3
-rw-r--r--stdio-common/vfscanf-internal.c2
7 files changed, 6 insertions, 39 deletions
diff --git a/stdio-common/isoc99_fscanf.c b/stdio-common/isoc99_fscanf.c
index 4210d11f2b..d7b5993f3e 100644
--- a/stdio-common/isoc99_fscanf.c
+++ b/stdio-common/isoc99_fscanf.c
@@ -20,20 +20,15 @@
#include <stdio.h>
/* Read formatted input from STREAM according to the format string FORMAT. */
-/* VARARGS2 */
int
__isoc99_fscanf (FILE *stream, const char *format, ...)
{
va_list arg;
int done;
- _IO_acquire_lock_clear_flags2 (stream);
- stream->_flags2 |= _IO_FLAGS2_SCANF_STD;
-
va_start (arg, format);
- done = __vfscanf_internal (stream, format, arg, 0);
+ done = __vfscanf_internal (stream, format, arg, SCANF_ISOC99_A);
va_end (arg);
- _IO_release_lock (stream);
return done;
}
diff --git a/stdio-common/isoc99_scanf.c b/stdio-common/isoc99_scanf.c
index 64c873eed9..3998322ea1 100644
--- a/stdio-common/isoc99_scanf.c
+++ b/stdio-common/isoc99_scanf.c
@@ -19,26 +19,16 @@
#include <stdio.h>
#include <libioP.h>
-
/* Read formatted input from stdin according to the format string FORMAT. */
-/* VARARGS1 */
int
__isoc99_scanf (const char *format, ...)
{
va_list arg;
int done;
-#ifdef _IO_MTSAFE_IO
- _IO_acquire_lock_clear_flags2 (stdin);
-#endif
- stdin->_flags2 |= _IO_FLAGS2_SCANF_STD;
-
va_start (arg, format);
- done = __vfscanf_internal (stdin, format, arg, 0);
+ done = __vfscanf_internal (stdin, format, arg, SCANF_ISOC99_A);
va_end (arg);
-#ifdef _IO_MTSAFE_IO
- _IO_release_lock (stdin);
-#endif
return done;
}
diff --git a/stdio-common/isoc99_sscanf.c b/stdio-common/isoc99_sscanf.c
index 2c89a03fe9..c9e5103b81 100644
--- a/stdio-common/isoc99_sscanf.c
+++ b/stdio-common/isoc99_sscanf.c
@@ -26,10 +26,9 @@ __isoc99_sscanf (const char *s, const char *format, ...)
int done;
_IO_strfile sf;
FILE *f = _IO_strfile_read (&sf, s);
- f->_flags2 |= _IO_FLAGS2_SCANF_STD;
va_start (arg, format);
- done = __vfscanf_internal (f, format, arg, 0);
+ done = __vfscanf_internal (f, format, arg, SCANF_ISOC99_A);
va_end (arg);
return done;
diff --git a/stdio-common/isoc99_vfscanf.c b/stdio-common/isoc99_vfscanf.c
index c96ca831ae..3c59c60b3e 100644
--- a/stdio-common/isoc99_vfscanf.c
+++ b/stdio-common/isoc99_vfscanf.c
@@ -19,16 +19,9 @@
#include <stdio.h>
/* Read formatted input from STREAM according to the format string FORMAT. */
-/* VARARGS2 */
int
__isoc99_vfscanf (FILE *stream, const char *format, va_list args)
{
- int done;
-
- _IO_acquire_lock_clear_flags2 (stream);
- stream->_flags2 |= _IO_FLAGS2_SCANF_STD;
- done = __vfscanf_internal (stream, format, args, 0);
- _IO_release_lock (stream);
- return done;
+ return __vfscanf_internal (stream, format, args, SCANF_ISOC99_A);
}
libc_hidden_def (__isoc99_vfscanf)
diff --git a/stdio-common/isoc99_vscanf.c b/stdio-common/isoc99_vscanf.c
index 72ae72ddee..fc5d609ae7 100644
--- a/stdio-common/isoc99_vscanf.c
+++ b/stdio-common/isoc99_vscanf.c
@@ -19,15 +19,8 @@
#include <stdio.h>
/* Read formatted input from STDIN according to the format string FORMAT. */
-/* VARARGS2 */
int
__isoc99_vscanf (const char *format, va_list args)
{
- int done;
-
- _IO_acquire_lock_clear_flags2 (stdin);
- stdin->_flags2 |= _IO_FLAGS2_SCANF_STD;
- done = __vfscanf_internal (stdin, format, args, 0);
- _IO_release_lock (stdin);
- return done;
+ return __vfscanf_internal (stdin, format, args, SCANF_ISOC99_A);
}
diff --git a/stdio-common/isoc99_vsscanf.c b/stdio-common/isoc99_vsscanf.c
index 02bc0f50e6..dfc394bb51 100644
--- a/stdio-common/isoc99_vsscanf.c
+++ b/stdio-common/isoc99_vsscanf.c
@@ -31,7 +31,6 @@ __isoc99_vsscanf (const char *string, const char *format, va_list args)
{
_IO_strfile sf;
FILE *f = _IO_strfile_read (&sf, string);
- f->_flags2 |= _IO_FLAGS2_SCANF_STD;
- return __vfscanf_internal (f, format, args, 0);
+ return __vfscanf_internal (f, format, args, SCANF_ISOC99_A);
}
libc_hidden_def (__isoc99_vsscanf)
diff --git a/stdio-common/vfscanf-internal.c b/stdio-common/vfscanf-internal.c
index 6bd0138f66..df79d91eda 100644
--- a/stdio-common/vfscanf-internal.c
+++ b/stdio-common/vfscanf-internal.c
@@ -335,8 +335,6 @@ __vfscanf_internal (FILE *s, const char *format, va_list argptr,
/* Temporarily honor the environmental mode bits. */
if (__ldbl_is_dbl)
mode_flags |= SCANF_LDBL_IS_DBL;
- if (s->_flags2 & _IO_FLAGS2_SCANF_STD)
- mode_flags |= SCANF_ISOC99_A;
#ifdef __va_copy
__va_copy (arg, argptr);