diff options
Diffstat (limited to 'stdio-common/isoc99_scanf.c')
-rw-r--r-- | stdio-common/isoc99_scanf.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/stdio-common/isoc99_scanf.c b/stdio-common/isoc99_scanf.c index 2e04e700e4..2bd1e512c1 100644 --- a/stdio-common/isoc99_scanf.c +++ b/stdio-common/isoc99_scanf.c @@ -28,13 +28,17 @@ __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 = _IO_vfscanf (stdin, format, arg, NULL); va_end (arg); +#ifdef _IO_MTSAFE_IO _IO_release_lock (stdin); +#endif return done; } |