home *** CD-ROM | disk | FTP | other *** search
- 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);
- }
-
-