]> git.pld-linux.org Git - packages/bash.git/blame - bash31-009
- 3.1 patchlevel 017
[packages/bash.git] / bash31-009
CommitLineData
6e5277ed
ER
1 BASH PATCH REPORT
2 =================
3
4Bash-Release: 3.1
5Patch-ID: bash31-009
6
7Bug-Reported-by: Joshua Neuheisel <jneuheisel@gmail.com>
8Bug-Reference-ID: <25d873330601140820v4ad8efd2t8bf683b073c138b3@mail.gmail.com>
9Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00062.html
10
11Bug-Description:
12
13Under some circumstances, background (asynchronous) jobs can set the terminal
14process group incorrectly. This can cause a foreground process (including
15the foreground shell) to get read errors and exit.
16
17Patch:
18
19*** ../bash-3.1/jobs.c Fri Nov 11 23:13:27 2005
20--- jobs.c Wed Feb 1 13:55:38 2006
21***************
22*** 620,625 ****
23 * the parent gives it away.
24 *
25 */
26! if (job_control && newjob->pgrp)
27 give_terminal_to (newjob->pgrp, 0);
28 }
29--- 634,642 ----
30 * the parent gives it away.
31 *
32+ * Don't give the terminal away if this shell is an asynchronous
33+ * subshell.
34+ *
35 */
36! if (job_control && newjob->pgrp && (subshell_environment&SUBSHELL_ASYNC) == 0)
37 give_terminal_to (newjob->pgrp, 0);
38 }
39***************
40*** 1656,1660 ****
41 shell's process group (we could be in the middle of a
42 pipeline, for example). */
43! if (async_p == 0 && pipeline_pgrp != shell_pgrp)
44 give_terminal_to (pipeline_pgrp, 0);
45
46--- 1743,1747 ----
47 shell's process group (we could be in the middle of a
48 pipeline, for example). */
49! if (async_p == 0 && pipeline_pgrp != shell_pgrp && ((subshell_environment&SUBSHELL_ASYNC) == 0))
50 give_terminal_to (pipeline_pgrp, 0);
51
52*** ../bash-3.1/patchlevel.h Wed Jul 20 13:58:20 2005
53--- patchlevel.h Wed Dec 7 13:48:42 2005
54***************
55*** 26,30 ****
56 looks for to find the patch level (for the sccs version string). */
57
58! #define PATCHLEVEL 8
59
60 #endif /* _PATCHLEVEL_H_ */
61--- 26,30 ----
62 looks for to find the patch level (for the sccs version string). */
63
64! #define PATCHLEVEL 9
65
66 #endif /* _PATCHLEVEL_H_ */
This page took 0.813573 seconds and 4 git commands to generate.