> > during testing of latest bash on Solaris I found strange behavior. We > > run the tests with clear environment (env -). It seems to be caused by > > undefined SHELL variable. The test reported > > > > 150,151c150,151 > > < ./redir11.sub: line 26: echo: write error: Bad file number > > < ./redir11.sub: line 27: echo: write error: Bad file number > > --- > >> ./redir11.sub: line 26: $(a=4 foo): Bad file number > >> ./redir11.sub: line 27: $(a=4 foo): Bad file number > > I can't reproduce this. The key is that redir11.sub inherits file > descriptor 3 as an fd open for read on /etc/passwd, and echo gets a > write error when trying to write to it. This might also be affected > by SHELLOPTS setting posix mode, but I can't reproduce it even when > setting SHELLOPTS=posix in the environment. > > It's also hard to see why starting bash without SHELL in the environment > sould make such a difference, since bash sets SHELL to the current user's > login shell, as found via getpwent.
Thank you for looking into this, I'll try to find out more. -- Vlad