summaryrefslogtreecommitdiffstats
path: root/source/a/bash/bash-5.1-patches/bash51-010
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/bash/bash-5.1-patches/bash51-010')
-rw-r--r--source/a/bash/bash-5.1-patches/bash51-01059
1 files changed, 59 insertions, 0 deletions
diff --git a/source/a/bash/bash-5.1-patches/bash51-010 b/source/a/bash/bash-5.1-patches/bash51-010
new file mode 100644
index 000000000..cfe6fa46b
--- /dev/null
+++ b/source/a/bash/bash-5.1-patches/bash51-010
@@ -0,0 +1,59 @@
+ BASH PATCH REPORT
+ =================
+
+Bash-Release: 5.1
+Patch-ID: bash51-010
+
+Bug-Reported-by: Jonas Alfredsson <jonas.alfredsson@protonmail.com>
+Bug-Reference-ID: <LjAfZaEuZncr2RaqhSSfcaiXdkuK6kdEYxshP3LApXbgMVQzggMGyWHO9knVkXicW2fP-ibsipJ_GZ-YaJRm96Rsozf6PgFmPsljRCtflls=@protonmail.com>
+Bug-Reference-URL: https://lists.gnu.org/archive/html/bug-bash/2021-05/msg00059.html
+
+Bug-Description:
+
+If `wait -n' is interrupted by a trapped signal other than SIGINT, it does
+not completely clean up state, and that can prevent subsequent calls to
+`wait -n' from working correctly.
+
+Patch (apply with `patch -p0'):
+
+*** ../bash-5.1-patched/builtins/wait.def 2020-12-16 17:13:12.000000000 -0500
+--- builtins/wait.def 2021-11-17 10:25:15.000000000 -0500
+***************
+*** 112,116 ****
+ WORD_LIST *list;
+ {
+! int status, code, opt, nflag, wflags;
+ char *vname;
+ SHELL_VAR *pidvar;
+--- 112,117 ----
+ WORD_LIST *list;
+ {
+! int status, code, opt, nflag;
+! volatile int wflags;
+ char *vname;
+ SHELL_VAR *pidvar;
+***************
+*** 181,184 ****
+--- 188,193 ----
+ status = 128 + wait_signal_received;
+ wait_sigint_cleanup ();
++ if (wflags & JWAIT_WAITING)
++ unset_waitlist ();
+ WAIT_RETURN (status);
+ }
+
+*** ../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 9
+
+ #endif /* _PATCHLEVEL_H_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 10
+
+ #endif /* _PATCHLEVEL_H_ */