ebf9b31727
- do not resend signal on termination (#1092132) - fix brace expansion on/off - fix incorrect rounding of numsers 0.5 < |x| <1.0 in printf (#1080940) - fix parser errors related to the end of the here-document marker - ksh hangs when command substitution fills out the pipe buffer - using typeset -l with a restricted variabled caused segmentation fault - monitor mode was documented incorrectly - do not crash when unsetting running function from another one (#1105139) - should report an error when trying to cd into directory without execution bit - job locking mechanism did not survive compiler optimization - reading a file via command substitution did not work when any of stdin, stdout or stderr were closed (#1070308) - fix lexical parser crash
13 lines
559 B
Diff
13 lines
559 B
Diff
diff -up ksh-20120801/src/cmd/ksh93/sh/xec.c.mtty ksh-20120801/src/cmd/ksh93/sh/xec.c
|
|
--- ksh-20120801/src/cmd/ksh93/sh/xec.c.mtty 2014-01-22 16:52:06.441608750 +0100
|
|
+++ ksh-20120801/src/cmd/ksh93/sh/xec.c 2014-01-22 16:52:06.485608361 +0100
|
|
@@ -3163,7 +3169,7 @@ pid_t _sh_fork(Shell_t *shp,register pid
|
|
* completed. Make parent the job group id.
|
|
*/
|
|
if(postid==0)
|
|
- job.curpgid = parent;
|
|
+ job.curpgid = job.jobcontrol?parent:getpid();
|
|
if(job.jobcontrol || (flags&FAMP))
|
|
{
|
|
if(setpgid(parent,job.curpgid)<0 && errno==EPERM)
|