aboutsummaryrefslogtreecommitdiff
path: root/libio/getchar.c
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2019-02-03 09:37:30 +0100
committerFlorian Weimer <fweimer@redhat.com>2019-02-03 09:38:24 +0100
commitee9941f94ea838774c34f60b3397fba07a803d92 (patch)
tree082d81424de2bb74bd63f0087869c956ea437ad7 /libio/getchar.c
parentc70824b9a4645c0ecd049da8cfdb2c28ae7ada23 (diff)
downloadglibc-ee9941f94ea838774c34f60b3397fba07a803d92.zip
glibc-ee9941f94ea838774c34f60b3397fba07a803d92.tar.gz
glibc-ee9941f94ea838774c34f60b3397fba07a803d92.tar.bz2
libio: Use stdin consistently for input functions [BZ #24153]
The internal _IO_stdin_ variable is not updated when the application assigns to stdin, which is a GNU extension.
Diffstat (limited to 'libio/getchar.c')
-rw-r--r--libio/getchar.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/libio/getchar.c b/libio/getchar.c
index 7e38530..90dea38 100644
--- a/libio/getchar.c
+++ b/libio/getchar.c
@@ -33,11 +33,11 @@ int
getchar (void)
{
int result;
- if (!_IO_need_lock (_IO_stdin))
- return _IO_getc_unlocked (_IO_stdin);
- _IO_acquire_lock (_IO_stdin);
- result = _IO_getc_unlocked (_IO_stdin);
- _IO_release_lock (_IO_stdin);
+ if (!_IO_need_lock (stdin))
+ return _IO_getc_unlocked (stdin);
+ _IO_acquire_lock (stdin);
+ result = _IO_getc_unlocked (stdin);
+ _IO_release_lock (stdin);
return result;
}