ref: 8820b3d9ea682635f35d5775bfa68831a5ad30ed
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; }