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_ */