BRL Bourne shell bug fix

gwyn at BRL.ARPA gwyn at BRL.ARPA
Tue Jun 14 11:24:33 AEST 1988


Jan Edler found that the BRL Bourne shell was sending its error
messages down pipelines.  This is embarrassing; I had just publicly
griped about shells that would send error output down pipelines!
It turned out the problem was due to an "efficiency improvement" one
of our guys had put in.  This needs to be backed out, as follows.

In error.c, in both functions failed() and failure(),
change all occurrences of prs_buff to prs (remove the comments
in failed()), change prc(NL) to newline(), and delete the line
containing flushb();.  In print.c, in function prp(),
change prs_buff to prs (remove the comment).  Also in print.c,
in function prs_cntl(), change the initialization of ptr to
just plain buffer (i.e. first loc. of the array; remove the
comment), add the following right before the "while" statement:
	flushb();			/* DAG -- added, just in case */
, change the 6 lines starting with /* DPK -- added following: */ to:
		/* DAG -- added following: */
		if ( ptr >= &buffer[BUFLEN] )
		{
			*ptr = '\0';
			prs( ptr = buffer );
		}
, and uncomment the last two lines in the function.

I apologize for any inconvenience.



More information about the Comp.unix.wizards mailing list