On Tue, 3 Oct 2017, Chet Ramey wrote:

> On 10/3/17 4:14 PM, Mikulas Patocka wrote:
> > 
> > 
> > On Sun, 1 Oct 2017, Chet Ramey wrote:
> > 
> >> On 9/30/17 4:20 AM, Mikulas Patocka wrote:
> >>
> >>> Is there some reason why do we need to check if $OLDPWD is a real 
> >>> directory? dash and ksh accept the $OLDPWD variable, but don't poke it 
> >>> with the stat syscall. zsh clears $OLDPWD.
> >>
> >> It makes no sense to inherit it if it doesn't name a directory (or
> >> "pathname" in the Posix standard), other than the sort of lazy evaluation
> >> that will prevent your particular problem.
> > 
> > Does something bad happen if we inherit $OLDPWD that points to a 
> > non-existing directory? Will some script malfunction because of it?
> 
> `cd -' will fail, of course. That's where $OLDPWD gets used. And who
> knows whether some script will fail? It's impossible to say.

If $OLDPWD points to a non-existing directory, 'cd -' will fail.
But if we clear $OLDPWD, 'cd -' will fail too (with just different message).

Mikulas

Reply via email to