From f56d6f90b667457b68562957811a142023ad28a7 Mon Sep 17 00:00:00 2001 From: Ken Thompson Date: Tue, 16 Jan 1979 09:47:11 -0500 Subject: [PATCH] Research V7 development Work on file usr/src/cmd/prep/prep2.c Co-Authored-By: Dennis Ritchie Synthesized-from: v7 --- usr/src/cmd/prep/prep2.c | 47 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 usr/src/cmd/prep/prep2.c diff --git a/usr/src/cmd/prep/prep2.c b/usr/src/cmd/prep/prep2.c new file mode 100644 index 0000000000..6eaf72b28f --- /dev/null +++ b/usr/src/cmd/prep/prep2.c @@ -0,0 +1,47 @@ +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); +} + -- 2.20.1