Accepting request 613679 from home:avindra:branches:Base:System
- Add patch 20, 21, 22 and 23 to bash-4.4-patches.tar.bz2 * 20: In circumstances involving long-running scripts that create and reap many processes, it is possible for the hash table bash uses to store exit statuses from asynchronous processes to develop loops. This patch fixes the loop causes and adds code to detect any future loops. * 21: A SIGINT received inside a SIGINT trap handler can possibly cause the shell to loop. * 22: There are cases where a failing readline command (e.g., delete-char at the end of a line) can cause a multi-character key sequence to `back up' and attempt to re-read some of the characters in the sequence. * 23: When sourcing a file from an interactive shell, setting the SIGINT handler to the default and typing ^C will cause the shell to exit. - remove bash-4.4-wait-sigint-handler.patch (upstreamed) OBS-URL: https://build.opensuse.org/request/show/613679 OBS-URL: https://build.opensuse.org/package/show/Base:System/bash?expand=0&rev=264
This commit is contained in:
parent
526b82607c
commit
ced73c8702
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d86684f8611c66689730646c48392d47ce52c680da9b3269178778097fac57fc
|
||||
size 10625
|
||||
oid sha256:8c161f78c916668078676da505aad2756202cbfee895d714091bfdc5c836e1fd
|
||||
size 12693
|
||||
|
@ -1,29 +0,0 @@
|
||||
Repeating self-calling of traps due the combination of a non-interactive
|
||||
shell, a trap handler for SIGINT, an external process in the trap handler,
|
||||
and a SIGINT within the trap after the external process runs.
|
||||
|
||||
---
|
||||
jobs.c | 12 +++++++++++-
|
||||
1 file changed, 11 insertions(+), 1 deletion(-)
|
||||
|
||||
--- jobs.c
|
||||
+++ jobs.c 2018-04-02 18:24:21.000000000 +0000
|
||||
@@ -2662,7 +2662,17 @@ wait_for (pid)
|
||||
wait_sigint_received = child_caught_sigint = 0;
|
||||
if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB))
|
||||
{
|
||||
- old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
|
||||
+ SigHandler *temp_sigint_handler;
|
||||
+
|
||||
+ temp_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler);
|
||||
+ if (temp_sigint_handler == wait_sigint_handler)
|
||||
+ {
|
||||
+#if defined (DEBUG)
|
||||
+ internal_warning ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap);
|
||||
+#endif
|
||||
+ }
|
||||
+ else
|
||||
+ old_sigint_handler = temp_sigint_handler;
|
||||
waiting_for_child = 0;
|
||||
if (old_sigint_handler == SIG_IGN)
|
||||
set_signal_handler (SIGINT, old_sigint_handler);
|
20
bash.changes
20
bash.changes
@ -3,6 +3,26 @@ Mon Jun 4 09:21:15 UTC 2018 - werner@suse.de
|
||||
|
||||
- In patch bash-4.4.dif avoud setgroups(2) but use initgroups(3) (boo#1095670)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jun 2 17:17:13 UTC 2018 - avindra@opensuse.org
|
||||
|
||||
- Add patch 20, 21, 22 and 23 to bash-4.4-patches.tar.bz2
|
||||
* 20: In circumstances involving long-running scripts that create
|
||||
and reap many processes, it is possible for the hash table bash
|
||||
uses to store exit statuses from asynchronous processes to
|
||||
develop loops. This patch fixes the loop causes and adds code
|
||||
to detect any future loops.
|
||||
* 21: A SIGINT received inside a SIGINT trap handler can possibly
|
||||
cause the shell to loop.
|
||||
* 22: There are cases where a failing readline command (e.g.,
|
||||
delete-char at the end of a line) can cause a multi-character
|
||||
key sequence to `back up' and attempt to re-read some of the
|
||||
characters in the sequence.
|
||||
* 23: When sourcing a file from an interactive shell, setting the
|
||||
SIGINT handler to the default and typing ^C will cause the
|
||||
shell to exit.
|
||||
- remove bash-4.4-wait-sigint-handler.patch (upstreamed)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 18 10:49:26 UTC 2018 - werner@suse.de
|
||||
|
||||
|
@ -83,8 +83,6 @@ Patch47: bash-4.3-perl522.patch
|
||||
Patch48: bash-4.3-extra-import-func.patch
|
||||
# PATCH-EXTEND-SUSE Allow root to clean file system if filled up
|
||||
Patch49: bash-4.3-pathtemp.patch
|
||||
# PATCH-FIX-UPSTREAM bnc#1086247
|
||||
Patch50: bash-4.4-wait-sigint-handler.patch
|
||||
%global _sysconfdir /etc
|
||||
%global _incdir %{_includedir}
|
||||
%global _ldldir /%{_lib}/bash
|
||||
@ -226,7 +224,6 @@ done
|
||||
%patch48 -b .eif
|
||||
%endif
|
||||
%patch49 -p0 -b .pthtmp
|
||||
%patch50 -p0 -b .trap
|
||||
%patch0 -p0 -b .0
|
||||
# This has to be always the same version as included in the bash its self
|
||||
rl1=($(sed -rn '/RL_READLINE_VERSION/p' lib/readline/readline.h))
|
||||
|
Loading…
Reference in New Issue
Block a user