Import sources from 2011-03-30 iso image

This commit is contained in:
Taru Karttunen 2011-03-30 15:46:40 +03:00
commit e5888a1ffd
7810 changed files with 2489717 additions and 0 deletions

26
sys/src/libstdio/_IO_getc.c Executable file
View file

@ -0,0 +1,26 @@
/*
* pANS stdio -- _IO_getc
*/
#include "iolib.h"
int _IO_getc(FILE *f){
int cnt;
switch(f->state){
default: /* CLOSED, WR, ERR, EOF */
return EOF;
case OPEN:
_IO_setvbuf(f);
case RDWR:
case RD:
if(f->flags&STRING) return EOF;
cnt=read(f->fd, f->buf, f->buf==f->unbuf?1:f->bufl);
switch(cnt){
case -1: f->state=ERR; return EOF;
case 0: f->state=END; return EOF;
default:
f->state=RD;
f->rp=f->buf;
f->wp=f->buf+cnt;
return (*f->rp++)&_IO_CHMASK;
}
}
}