Research V7 development
[unix-history] / usr / src / cmd / prep / prep2.c
int optr;
char obuf[512];
int nflush;
put(string,n)
char *string;
{
int i;
char *o;
/*printf("%c %d\n",*string,n);/*DEBUG*/
string--;
if((i = optr + n - 512) >= 0) {
n -= i;
o = &obuf[optr] -1;
while(--n >= 0)
*++o = *++string;
optr = 512;
flsh();
n = i;
}
o = &obuf[optr] - 1;
optr += n;
while(--n >= 0) {
*++o = *++string;
}
return(0);
}
flsh()
{
if(optr <= 0) return(optr);
nflush++;
if(write(1,obuf,optr) != optr)
return(-1);
optr = 0;
return(0);
}