blob: ff13fb0c9f0dbbc2a0388e2b6245600c68faaecb [file] [log] [blame]
[From http://mirror.keystealth.org/gnu/bash/bash-5.1-patches/bash51-003]
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
BASH PATCH REPORT
=================
Bash-Release: 5.1
Patch-ID: bash51-003
Bug-Reported-by: oguzismailuysal@gmail.com
Bug-Reference-ID: <CAH7i3LpG91BnNcDtaTUm2Ph7a+PnJkuh6nAc87cVL7_38tOaMQ@mail.gmail.com>
Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2020-12/msg00050.html
Bug-Description:
Bash does not put a command substitution process that is started to perform an
expansion in a child process into the right process group where it can receive
keyboard-generated signals.
Patch (apply with `patch -p0'):
*** ../bash-5.1-patched/subst.c 2020-11-16 10:33:15.000000000 -0500
--- b/subst.c 2020-12-12 13:50:11.000000000 -0500
***************
*** 6357,6362 ****
#if defined (JOB_CONTROL)
old_pipeline_pgrp = pipeline_pgrp;
! /* Don't reset the pipeline pgrp if we're already a subshell in a pipeline. */
! if ((subshell_environment & SUBSHELL_PIPE) == 0)
pipeline_pgrp = shell_pgrp;
cleanup_the_pipeline ();
--- 6357,6364 ----
#if defined (JOB_CONTROL)
old_pipeline_pgrp = pipeline_pgrp;
! /* Don't reset the pipeline pgrp if we're already a subshell in a pipeline or
! we've already forked to run a disk command (and are expanding redirections,
! for example). */
! if ((subshell_environment & (SUBSHELL_FORK|SUBSHELL_PIPE)) == 0)
pipeline_pgrp = shell_pgrp;
cleanup_the_pipeline ();
*** ../bash-5.1/patchlevel.h 2020-06-22 14:51:03.000000000 -0400
--- b/patchlevel.h 2020-10-01 11:01:28.000000000 -0400
***************
*** 26,30 ****
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 2
#endif /* _PATCHLEVEL_H_ */
--- 26,30 ----
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 3
#endif /* _PATCHLEVEL_H_ */