diff options
Diffstat (limited to 'src/base/io/putc.c')
-rw-r--r-- | src/base/io/putc.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/base/io/putc.c b/src/base/io/putc.c new file mode 100644 index 0000000..167f10f --- /dev/null +++ b/src/base/io/putc.c @@ -0,0 +1,19 @@ +#include "internal.h" + +int +io·putc(io·Header *io, int c) +{ + intptr i; + + for(;;){ + i = io->olen; + if(i){ + io->e[i++] = c; + io->olen = i; + return 0; + } + if(io·flush(io) == io·BufEof) + break; + } + return io·BufEof; +} |