diff --git a/shell/ash.c b/shell/ash.c index f0729ed4d..d20618d3c 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -10877,6 +10877,7 @@ static void redirect(union node *redir, int flags) INTOFF; newfd = openredirect(n); if ((flags & REDIR_PUSH) && sv->renamed[fd] == EMPTY) { + i = fd; if (newfd == fd) { try++; } else if ((i = fcntl(fd, F_DUPFD, 10)) == -1) {