Path: utzoo!attcan!uunet!mcvax!ukc!eagle!icdoc!cam-cl! From: gwyn@arpa.brl Newsgroups: comp.unix.wizards Subject: BRL Bourne shell bug fix Message-ID: <8806132056.aa04801@VGR.BRL.ARPA> Date: 14 Jun 88 00:56:22 GMT Sender: unix-wizards-request@uk.ac.ucl.cs.nss Lines: 25 To: unix-wizards@arpa.brl 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.