Index: fusl/src/stdio/__towrite.c |
diff --git a/fusl/src/stdio/__towrite.c b/fusl/src/stdio/__towrite.c |
new file mode 100644 |
index 0000000000000000000000000000000000000000..0a69d926dc3c10547a00ae9f7b8517c188078c68 |
--- /dev/null |
+++ b/fusl/src/stdio/__towrite.c |
@@ -0,0 +1,25 @@ |
+#include "stdio_impl.h" |
+ |
+int __towrite(FILE *f) |
+{ |
+ f->mode |= f->mode-1; |
+ if (f->flags & (F_NOWR)) { |
+ f->flags |= F_ERR; |
+ return EOF; |
+ } |
+ /* Clear read buffer (easier than summoning nasal demons) */ |
+ f->rpos = f->rend = 0; |
+ |
+ /* Activate write through the buffer. */ |
+ f->wpos = f->wbase = f->buf; |
+ f->wend = f->buf + f->buf_size; |
+ |
+ return 0; |
+} |
+ |
+void __stdio_exit_needed(void); |
+ |
+void __towrite_needs_stdio_exit() |
+{ |
+ __stdio_exit_needed(); |
+} |