commit bash-20120427 snapshot

This commit is contained in:
Chet Ramey
2012-05-02 08:33:16 -04:00
parent e107650cbf
commit 8cb3d56718
6 changed files with 1030 additions and 7 deletions
+8
View File
@@ -13781,3 +13781,11 @@ bashline.c
- bash_filename_stat_hook: add code from bash_directory_completion_hook
that performs pathname canonicalization in the same way that cd and
other builtins will do
4/25
----
execute_cmd.c
- execute_pipeline: change the call to move_to_high_fd to make it use
getdtablesize() and to not stomp on existing open file descriptors,
like the fd the shell is using to read a script. Bug report from
Greg Wooledge <wooledg@eeg.ccf.org>
+1 -1
View File
@@ -2324,7 +2324,7 @@ execute_pipeline (command, asynchronous, pipe_in, pipe_out, fds_to_close)
current shell environment. */
if (lastpipe_opt && job_control == 0 && asynchronous == 0 && pipe_out == NO_PIPE && prev > 0)
{
lstdin = move_to_high_fd (0, 0, 255);
lstdin = move_to_high_fd (0, 1, -1);
if (lstdin > 0)
{
do_piping (prev, pipe_out);
+4 -4
View File
@@ -145,7 +145,7 @@ iso_8601_2000_year(char *buf, int year, size_t fw)
char sign = '\0';
if (year >= -9999 && year <= 9999) {
sprintf(buf, "%0*d", fw, year);
sprintf(buf, "%0*d", (int) fw, year);
return;
}
@@ -361,7 +361,7 @@ strftime(char *s, size_t maxsize, const char *format, const struct tm *timeptr)
fw = max(fw, min_fw);
sprintf(tbuf, flag
? "%+0*ld"
: "%0*ld", fw,
: "%0*ld", (int) fw,
(timeptr->tm_year + 1900L) / 100);
} else
#endif /* POSIX_2008 */
@@ -440,7 +440,7 @@ strftime(char *s, size_t maxsize, const char *format, const struct tm *timeptr)
fw = max(fw, min_fw);
sprintf(tbuf, flag
? "%+0*ld"
: "%0*ld", fw,
: "%0*ld", (int) fw,
y);
} else
#endif /* POSIX_2008 */
@@ -577,7 +577,7 @@ strftime(char *s, size_t maxsize, const char *format, const struct tm *timeptr)
fw = max(fw, min_fw);
sprintf(tbuf, flag
? "%+0*ld"
: "%0*ld", fw,
: "%0*ld", (int) fw,
1900L + timeptr->tm_year);
} else
#endif /* POSIX_2008 */
+1006
View File
File diff suppressed because it is too large Load Diff
+6 -2
View File
@@ -1091,10 +1091,14 @@ 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 0 /* bash-4.3 */
if (r < 0 && (flags & RX_INTERNAL) && (errno == EIO || errno == ENOSPC))
REDIRECTION_ERROR (r, errno, -1);
#endif
}
break;
+5
View File
@@ -0,0 +1,5 @@
# See whether or not we can use `diff -a'
( diff -a ./printf.tests ./printf.tests >/dev/null 2>&1 ) && AFLAG=-a
${THIS_SH} ./printf.tests > /tmp/xx 2>&1
diff $AFLAG /tmp/xx printf.right && rm -f /tmp/xx