tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: /bin/sh redirection in 'while' loop not closed afterwards?
On Thursday, at 08:12, David Laight wrote:
| Switching the first two lines:
| sv->renamed[fd] = sv_fd;
| if (sv_fd == -1) {
| if (errno != EBADF) {
| Will solve that one.
| Which may be why 'EMPTY' is -2, not -1.
Yes, looks fine.
Then, after the "if ((flags & REDIR_PUSH) && sv->renamed[fd] == EMPTY)" block,
you close(fd) on a fd that is potentially closed already. I guess this does not
hurt, though.
FreeBSD do not close(fd) because openredirect() will dup2() into it, so it
will be implicitly closed.
Home |
Main Index |
Thread Index |
Old Index