summaryrefslogtreecommitdiff
path: root/redir.c
diff options
context:
space:
mode:
authorChet Ramey <chet.ramey@case.edu>2013-01-10 19:47:54 -0500
committerChet Ramey <chet.ramey@case.edu>2013-01-10 19:47:54 -0500
commit774d3bf69d419308d56f7082d8bc87bbc90abe74 (patch)
treead9cba5dea68df3a0296812ba98f054aa4a44237 /redir.c
parent11d0fdf779380d2951b9ff0cc37a6872cb1a7438 (diff)
downloadbash-774d3bf69d419308d56f7082d8bc87bbc90abe74.tar.gz
Bash-4.2 patch 40
Diffstat (limited to 'redir.c')
-rw-r--r--redir.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/redir.c b/redir.c
index 921be8ca..f4b1658c 100644
--- a/redir.c
+++ b/redir.c
@@ -1091,10 +1091,12 @@ do_redirection_internal (redirect, flags)
#if defined (BUFFERED_INPUT)
check_bash_input (redirector);
- close_buffered_fd (redirector);
+ r = close_buffered_fd (redirector);
#else /* !BUFFERED_INPUT */
- close (redirector);
+ r = close (redirector);
#endif /* !BUFFERED_INPUT */
+ if (r < 0 && (flags & RX_INTERNAL) && (errno == EIO || errno == ENOSPC))
+ REDIRECTION_ERROR (r, errno, -1);
}
break;