git: 9front

ref: c274fe25a4e927e79c881d4a47f0dd4ea0c1e7aa
dir: /sys/src/libbio/bputc.c/

View raw version
#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;
}