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
35 lines
1.4 KiB
Diff
35 lines
1.4 KiB
Diff
diff -up ksh-20120801/src/cmd/ksh93/sh/lex.c.mlikfiks ksh-20120801/src/cmd/ksh93/sh/lex.c
|
|
--- ksh-20120801/src/cmd/ksh93/sh/lex.c.mlikfiks 2013-07-22 12:45:30.923170264 +0200
|
|
+++ ksh-20120801/src/cmd/ksh93/sh/lex.c 2013-07-22 12:46:25.235556905 +0200
|
|
@@ -2465,7 +2465,7 @@ static int alias_exceptf(Sfio_t *iop,int
|
|
if(dp!=handle)
|
|
sfdisc(iop,dp);
|
|
}
|
|
- else if(type==SF_FINAL)
|
|
+ else if(type==SF_DPOP || type==SF_FINAL)
|
|
free((void*)ap);
|
|
goto done;
|
|
}
|
|
diff -up ksh-20120801/src/cmd/ksh93/sh/path.c.mlikfiks ksh-20120801/src/cmd/ksh93/sh/path.c
|
|
--- ksh-20120801/src/cmd/ksh93/sh/path.c.mlikfiks 2013-07-22 12:47:23.149990016 +0200
|
|
+++ ksh-20120801/src/cmd/ksh93/sh/path.c 2013-07-22 12:48:33.363283877 +0200
|
|
@@ -613,6 +613,7 @@ static void funload(Shell_t *shp,int fno
|
|
}
|
|
while((rp=dtnext(shp->fpathdict,rp)) && strcmp(pname,rp->fname)==0);
|
|
sh_close(fno);
|
|
+ free((void*)pname);
|
|
return;
|
|
}
|
|
sh_onstate(SH_NOLOG);
|
|
diff -up ksh-20120801/src/cmd/ksh93/sh/macro.c.aliasfix ksh-20120801/src/cmd/ksh93/sh/macro.c
|
|
--- ksh-20120801/src/cmd/ksh93/sh/macro.c.aliasfix 2013-07-29 15:03:45.841680475 +0200
|
|
+++ ksh-20120801/src/cmd/ksh93/sh/macro.c 2013-07-29 15:04:23.871336821 +0200
|
|
@@ -2085,6 +2085,7 @@ static void comsubst(Mac_t *mp,register
|
|
}
|
|
sfputc(stkp,c);
|
|
}
|
|
+ sfputc(stkp,' ');
|
|
c = stktell(stkp);
|
|
str=stkfreeze(stkp,1);
|
|
/* disable verbose and don't save in history file */
|