| BASH PATCH REPORT |
| ================= |
| |
| Bash-Release: 4.2 |
| Patch-ID: bash42-041 |
| |
| Bug-Reported-by: Andrey Borzenkov <arvidjaar@gmail.com> |
| Bug-Reference-ID: <20121202205200.2134478e@opensuse.site> |
| Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2012-12/msg00008.html |
| |
| Bug-Description: |
| |
| Process substitution incorrectly inherited a flag that inhibited using the |
| (local) temporary environment for variable lookups if it was providing |
| the filename to a redirection. The intent the flag is to enforce the |
| Posix command expansion ordering rules. |
| |
| Patch (apply with `patch -p0'): |
| |
| *** ../bash-4.2-patched/subst.c 2012-07-14 15:53:20.000000000 -0400 |
| --- subst.c 2012-12-02 22:26:54.000000000 -0500 |
| *************** |
| *** 5125,5128 **** |
| --- 5129,5136 ---- |
| #endif /* HAVE_DEV_FD */ |
| |
| + /* subshells shouldn't have this flag, which controls using the temporary |
| + environment for variable lookups. */ |
| + expanding_redir = 0; |
| + |
| result = parse_and_execute (string, "process substitution", (SEVAL_NONINT|SEVAL_NOHIST)); |
| |
| *** ../bash-4.2-patched/patchlevel.h Sat Jun 12 20:14:48 2010 |
| --- patchlevel.h Thu Feb 24 21:41:34 2011 |
| *************** |
| *** 26,30 **** |
| looks for to find the patch level (for the sccs version string). */ |
| |
| ! #define PATCHLEVEL 40 |
| |
| #endif /* _PATCHLEVEL_H_ */ |
| --- 26,30 ---- |
| looks for to find the patch level (for the sccs version string). */ |
| |
| ! #define PATCHLEVEL 41 |
| |
| #endif /* _PATCHLEVEL_H_ */ |