From owner-freebsd-hackers Wed Sep 11 18:54:10 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id SAA21536 for hackers-outgoing; Wed, 11 Sep 1996 18:54:10 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.7.5/8.7.3) with SMTP id SAA21531; Wed, 11 Sep 1996 18:54:07 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.12/8.6.9) id LAA19415; Thu, 12 Sep 1996 11:50:16 +1000 Date: Thu, 12 Sep 1996 11:50:16 +1000 From: Bruce Evans Message-Id: <199609120150.LAA19415@godzilla.zeta.org.au> To: current@freebsd.org, hackers@freebsd.org, mrcpu@cdsnet.net Subject: Re: -current and perl5.003? Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >A box supped as of yesterday is not passing 1 test for perl5.003. > >The following fails: > >(op/exec) > >if ((system "/bin/sh -c 'exit 1'") != 256) { print "not "; } >print "ok 5\n"; > > > >It's got me. It passes just fine on everything supped before then, but >nothing in the sup looked like it could have the remotest effect. `exit 1' in a shell script now exits with status 0 :-(. Yesterday's change obviously broke it. Bruce Index: main.c =================================================================== RCS file: /a/ncvs/src/bin/sh/main.c,v retrieving revision 1.6 retrieving revision 1.5 diff -c -2 -r1.6 -r1.5 *** main.c 1996/09/08 03:12:22 1.6 --- main.c 1996/09/01 10:20:38 1.5 *************** *** 340,350 **** char **argv; { - extern int oexitstatus; - if (stoppedjobs()) return 0; if (argc > 1) exitstatus = number(argv[1]); ! exitshell(oexitstatus); /*NOTREACHED*/ return 0; --- 340,348 ---- char **argv; { if (stoppedjobs()) return 0; if (argc > 1) exitstatus = number(argv[1]); ! exitshell(exitstatus); /*NOTREACHED*/ return 0;