summaryrefslogtreecommitdiff
path: root/sys/src/libstdio/setbuf.c
blob: 31c5d3e1e88bcc706cca1892a2da9a2f319ef635 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/*
 * pANS stdio -- setbuf
 */
#include "iolib.h"
void setbuf(FILE *f, char *buf){
	if(f->state==OPEN){
		if(buf)
			f->bufl=BUFSIZ;
		else{
			buf=f->unbuf;
			f->bufl=0;
		}
		f->rp=f->wp=f->lp=f->buf=buf;
		f->state=RDWR;
	}
	/* else error, but there's no way to report it */
}