tech-pkg: Re: Solaris /bin/sh severely broken (once again) (was: Re: Making pkgsrc more robust)

Subject: Re: Solaris /bin/sh severely broken (once again) (was: Re: Making pkgsrc more robust)
To: None <Gilles.Dauphin@enst.fr, rillig@NetBSD.org>
From: Gilles Dauphin <Gilles.Dauphin@enst.fr>
List: tech-pkg
Date: 02/08/2006 11:06:55
> From: Roland Illig <rillig@NetBSD.org>
>
> 
> Gilles Dauphin wrote:
> > And please look at pre-build : 
> > if you don't use pkgview you don't have /usr/pkg/vulnerable
> > and the pre-build break at line:
> > 
> > if cd "$dbdir" 1>/dev/null 2>&1; then <--- THIS BREAK THE BULK
> 
> Thanks for noting this. By the way, you forgot to mention that this only 
> happens on Solaris. With a POSIX shell, this code works perfectly. :)
> 
> I fixed it by replacing the code with this:
> 
> if (cd "$dbdir" 1>/dev/null 2>&1); then
> cd "$dbdir"
OR 
 if [ -d "$dbdir" ]; then
 cd "$dbdir"
> 
> This will make the subshell return an error code, and in case the 
> subshell could change the directory, the parent shell is very likely to 
> be able to do the same.
> 
> Roland

AltStyle によって変換されたページ (->オリジナル) /