| BASH PATCH REPORT |
| ================= |
| |
| Bash-Release: 4.2 |
| Patch-ID: bash42-010 |
| |
| Bug-Reported-by: Mike Frysinger <vapier@gentoo.org> |
| Bug-Reference-ID: <201104122356.20160.vapier@gentoo.org> |
| Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2011-04/msg00058.html |
| |
| Bug-Description: |
| |
| Bash did not correctly print/reproduce here documents attached to commands |
| inside compound commands such as arithmetic for loops and user-specified |
| subshells. This affected the execution of such commands inside a shell |
| function when the function definition is saved and later restored using |
| `.' or `eval'. |
| |
| Patch (apply with `patch -p0'): |
| |
| *** ../bash-4.2-patched/print_cmd.c 2010-05-30 18:34:08.000000000 -0400 |
| --- ./print_cmd.c 2011-04-14 10:43:18.000000000 -0400 |
| *************** |
| *** 316,319 **** |
| --- 317,321 ---- |
| skip_this_indent++; |
| make_command_string_internal (command->value.Subshell->command); |
| + PRINT_DEFERRED_HEREDOCS (""); |
| cprintf (" )"); |
| break; |
| *************** |
| *** 593,596 **** |
| --- 606,610 ---- |
| indentation += indentation_amount; |
| make_command_string_internal (arith_for_command->action); |
| + PRINT_DEFERRED_HEREDOCS (""); |
| semicolon (); |
| indentation -= indentation_amount; |
| *************** |
| *** 654,657 **** |
| --- 668,672 ---- |
| |
| make_command_string_internal (group_command->command); |
| + PRINT_DEFERRED_HEREDOCS (""); |
| |
| if (inside_function_def) |
| *** ../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 9 |
| |
| #endif /* _PATCHLEVEL_H_ */ |
| --- 26,30 ---- |
| looks for to find the patch level (for the sccs version string). */ |
| |
| ! #define PATCHLEVEL 10 |
| |
| #endif /* _PATCHLEVEL_H_ */ |