BASH PATCH REPORT
=
Bash-Release: 3.1
Patch-ID: bash31-009
Bug-Reported-by: Joshua Neuheisel <[EMAIL PROTECTED]>
Bug-Reference-ID: <[EMAIL PROTECTED]>
Bug-Reference-URL:
http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00062.html
Bug-Description:
Under some circumstances, background (asynchronous) jobs can set the terminal
process group incorrectly. This can cause a foreground process (including
the foreground shell) to get read errors and exit.
Patch:
*** ../bash-3.1/jobs.c Fri Nov 11 23:13:27 2005
--- jobs.c Wed Feb 1 13:55:38 2006
***
*** 620,625
* the parent gives it away.
*
*/
! if (job_control && newjob->pgrp)
give_terminal_to (newjob->pgrp, 0);
}
--- 634,642
* the parent gives it away.
*
+ * Don't give the terminal away if this shell is an asynchronous
+ * subshell.
+ *
*/
! if (job_control && newjob->pgrp &&
(subshell_environment&SUBSHELL_ASYNC) == 0)
give_terminal_to (newjob->pgrp, 0);
}
***
*** 1656,1660
shell's process group (we could be in the middle of a
pipeline, for example). */
! if (async_p == 0 && pipeline_pgrp != shell_pgrp)
give_terminal_to (pipeline_pgrp, 0);
--- 1743,1747
shell's process group (we could be in the middle of a
pipeline, for example). */
! if (async_p == 0 && pipeline_pgrp != shell_pgrp &&
((subshell_environment&SUBSHELL_ASYNC) == 0))
give_terminal_to (pipeline_pgrp, 0);
*** ../bash-3.1/patchlevel.hWed Jul 20 13:58:20 2005
--- patchlevel.hWed Dec 7 13:48:42 2005
***
*** 26,30
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 8
#endif /* _PATCHLEVEL_H_ */
--- 26,30
looks for to find the patch level (for the sccs version string). */
! #define PATCHLEVEL 9
#endif /* _PATCHLEVEL_H_ */
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
( ``Discere est Dolere'' -- chet )
Live Strong. No day but today.
Chet Ramey, ITS, CWRU[EMAIL PROTECTED]http://cnswww.cns.cwru.edu/~chet/
___
Bug-bash mailing list
Bug-bash@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-bash