source: npl/system/bash/bash-4.3-patches/bash43-032 @ a87727a

Last change on this file since a87727a was c5c522c, checked in by Edwin Eefting <edwin@datux.nl>, 8 years ago

initial commit, transferred from cleaned syn3 svn tree

  • Property mode set to 100644
File size: 1.7 KB
Line 
1                             BASH PATCH REPORT
2                             =================
3
4Bash-Release:   4.3
5Patch-ID:       bash43-032
6
7Bug-Reported-by:        crispusfairbairn@gmail.com
8Bug-Reference-ID:       <b5e499f7-3b98-408d-9f94-c0387580e73a@googlegroups.com>
9Bug-Reference-URL:      http://lists.gnu.org/archive/html/bug-bash/2014-09/msg00013.html
10
11Bug-Description:
12
13When bash is running in Posix mode, it allows signals -- including SIGCHLD --
14to interrupt the `wait' builtin, as Posix requires.  However, the interrupt
15causes bash to not run a SIGCHLD trap for all exited children.  This patch
16fixes the issue and restores the documented behavior in Posix mode.
17
18Patch (apply with `patch -p0'):
19
20*** ../bash-4.3-patched/jobs.c  2014-05-14 09:20:15.000000000 -0400
21--- jobs.c      2014-09-09 11:50:38.000000000 -0400
22***************
23*** 3340,3344 ****
24        {
25          interrupt_immediately = 0;
26!         trap_handler (SIGCHLD);       /* set pending_traps[SIGCHLD] */
27          wait_signal_received = SIGCHLD;
28          /* If we're in a signal handler, let CHECK_WAIT_INTR pick it up;
29--- 3346,3352 ----
30        {
31          interrupt_immediately = 0;
32!         /* This was trap_handler (SIGCHLD) but that can lose traps if
33!            children_exited > 1 */
34!         queue_sigchld_trap (children_exited);
35          wait_signal_received = SIGCHLD;
36          /* If we're in a signal handler, let CHECK_WAIT_INTR pick it up;
37*** ../bash-4.3/patchlevel.h    2012-12-29 10:47:57.000000000 -0500
38--- patchlevel.h        2014-03-20 20:01:28.000000000 -0400
39***************
40*** 26,30 ****
41     looks for to find the patch level (for the sccs version string). */
42 
43! #define PATCHLEVEL 31
44 
45  #endif /* _PATCHLEVEL_H_ */
46--- 26,30 ----
47     looks for to find the patch level (for the sccs version string). */
48 
49! #define PATCHLEVEL 32
50 
51  #endif /* _PATCHLEVEL_H_ */
Note: See TracBrowser for help on using the repository browser.