ref: c89b0b3c238ff4e288f259be211f3b878bd0c30d
dir: /sys/src/libbio/bputc.c/
#include <u.h> #include <libc.h> #include <bio.h> int Bputc(Biobufhdr *bp, int c) { int i; for(;;) { i = bp->ocount; if(i) { bp->ebuf[i++] = c; bp->ocount = i; return 0; } if(Bflush(bp) == Beof) break; } return Beof; }