Regression in sh(1) ? (Was: make delete-old fails when removing catpages)

From: Antoine Brodin <antoine_at_FreeBSD.org>
Date: Thu, 14 Jan 2010 18:47:58 +0100
Jeff Blank <jfb_at_mr-happy.com> wrote:
> Hi,
> 
> 9-CURRENT, csups around 2000 UTC yesterday and 0100 UTC today, fails
> when removing some catpages during 'make delete-old'.  Output below is
> from after the initial failure, and context had left my scrollback
> buffer, but the first file that failed was /usr/share/man/cat1/rcp.1.gz.
> I removed it by hand with no issues and ran again:
> 
> ==========
> # make delete-old
> >>> Removing old files (only deletes safe to delete libs)
> remove /usr/share/man/cat1/ipftest.1.gz? *** Error code 1
> 
> Stop in /usr/src.
> *** Error code 1
> 
> Stop in /usr/src.
> # rm /usr/share/man/cat1/ipftest.1.gz
> # make delete-old
> >>> Removing old files (only deletes safe to delete libs)
> remove /usr/share/man/cat1/ipresend.1.gz? *** Error code 1
> 
> Stop in /usr/src.
> *** Error code 1
> 
> Stop in /usr/src.
[Snip]

This seems to be a regression in sh(1).
Simple test case:
This succeeds on stable/8:
%%%
> sh
$ touch /tmp/foo; 3<&0; echo /tmp/foo | while read i; do rm -vi ${i} <&3 ; done
remove /tmp/foo? y
/tmp/foo
%%%

and fails on head:
%%%
> sh
$ touch /tmp/foo; 3<&0; echo /tmp/foo | while read i; do rm -vi ${i} <&3 ; done
remove /tmp/foo? $ 
%%%

Cheers,

Antoine
Received on Thu Jan 14 2010 - 17:10:29 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:00 UTC