summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/libstdio/stdin.c
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/libstdio/stdin.c')
-rw-r--r--mdk-stage1/dietlibc/libstdio/stdin.c26
1 files changed, 18 insertions, 8 deletions
diff --git a/mdk-stage1/dietlibc/libstdio/stdin.c b/mdk-stage1/dietlibc/libstdio/stdin.c
index 2db82f9ab..217f3f609 100644
--- a/mdk-stage1/dietlibc/libstdio/stdin.c
+++ b/mdk-stage1/dietlibc/libstdio/stdin.c
@@ -1,13 +1,23 @@
#include <dietstdio.h>
-#ifdef WANT_BUFFERED_STDIO
-static FILE __stdin = { 0, BUFINPUT, 0, 0 };
-
-int __fflush_stdin() {
- return fflush(stdin);
-}
-#else
-static FILE __stdin = { 0, 0 };
+static char __stdin_buf[BUFSIZE];
+static FILE __stdin = {
+ .fd=0,
+ .flags=BUFINPUT|STATICBUF,
+ .bs=0, .bm=0,
+ .buflen=BUFSIZE,
+ .buf=__stdin_buf,
+ .next=0,
+ .popen_kludge=0,
+ .ungetbuf=0,
+ .ungotten=0
+#ifdef WANT_THREAD_SAFE
+ , .m=PTHREAD_MUTEX_INITIALIZER
#endif
+};
FILE *stdin=&__stdin;
+
+int __fflush_stdin(void) {
+ return fflush(stdin);
+}