summaryrefslogtreecommitdiffstats
path: root/source/a/bash/bash-5.1-patches/bash51-003
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/bash/bash-5.1-patches/bash51-003')
-rw-r--r--source/a/bash/bash-5.1-patches/bash51-00353
1 files changed, 53 insertions, 0 deletions
diff --git a/source/a/bash/bash-5.1-patches/bash51-003 b/source/a/bash/bash-5.1-patches/bash51-003
new file mode 100644
index 000000000..68e5dce6a
--- /dev/null
+++ b/source/a/bash/bash-5.1-patches/bash51-003
@@ -0,0 +1,53 @@
+ 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
+--- 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
+--- 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_ */