First Commit
[librecmc/package-feed.git] / utils / bash / patches / 102-upstream-bash43-002.patch
1                              BASH PATCH REPORT
2                              =================
3
4 Bash-Release:   4.3
5 Patch-ID:       bash43-002
6
7 Bug-Reported-by:        Moe Tunes <moetunes42@gmail.com>
8 Bug-Reference-ID:       <53103F49.3070100@gmail.com>
9 Bug-Reference-URL:      http://lists.gnu.org/archive/html/bug-bash/2014-02/msg00086.html
10
11 Bug-Description:
12
13 A change to save state while running the DEBUG trap caused pipelines to hang
14 on systems which need process group synchronization while building pipelines.
15
16 Patch (apply with `patch -p0'):
17
18 --- a/trap.c
19 +++ b/trap.c
20 @@ -920,7 +920,8 @@ _run_trap_internal (sig, tag)
21        subst_assign_varlist = 0;
22  
23  #if defined (JOB_CONTROL)
24 -      save_pipeline (1);       /* XXX only provides one save level */
25 +      if (sig != DEBUG_TRAP)   /* run_debug_trap does this */
26 +       save_pipeline (1);      /* XXX only provides one save level */
27  #endif
28  
29        /* If we're in a function, make sure return longjmps come here, too. */
30 @@ -940,7 +941,8 @@ _run_trap_internal (sig, tag)
31        trap_exit_value = last_command_exit_value;
32  
33  #if defined (JOB_CONTROL)
34 -      restore_pipeline (1);
35 +      if (sig != DEBUG_TRAP)   /* run_debug_trap does this */
36 +       restore_pipeline (1);
37  #endif
38  
39        subst_assign_varlist = save_subst_varlist;
40 --- a/patchlevel.h
41 +++ b/patchlevel.h
42 @@ -25,6 +25,6 @@
43     regexp `^#define[   ]*PATCHLEVEL', since that's what support/mkversion.sh
44     looks for to find the patch level (for the sccs version string). */
45  
46 -#define PATCHLEVEL 1
47 +#define PATCHLEVEL 2
48  
49  #endif /* _PATCHLEVEL_H_ */