diff --git a/NEWS b/NEWS index 0ec3d6910..02c5cbd7c 100644 --- a/NEWS +++ b/NEWS @@ -3,6 +3,15 @@ For full details, see the git log at: https://github.com/ksh93/ksh Any uppercase BUG_* names are modernish shell bug IDs. +2021-12-21: + +- Fixed a bug that caused subshells (such as code blocks in parentheses) to + partially behave like the interactive main shell after running anything + that invokes the parser. For example: + $ (eval :; sleep 1 & echo done) + [1] 30909 <--- incorrect job control output from subshell + done + 2021-12-17: - Release 1.0.0-beta.2. diff --git a/src/cmd/ksh93/include/version.h b/src/cmd/ksh93/include/version.h index 815ed0ac5..83838dcdd 100644 --- a/src/cmd/ksh93/include/version.h +++ b/src/cmd/ksh93/include/version.h @@ -21,7 +21,7 @@ #define SH_RELEASE_FORK "93u+m" /* only change if you develop a new ksh93 fork */ #define SH_RELEASE_SVER "1.0.0-beta.2" /* semantic version number: https://semver.org */ -#define SH_RELEASE_DATE "2021-12-17" /* must be in this format for $((.sh.version)) */ +#define SH_RELEASE_DATE "2021-12-21" /* must be in this format for $((.sh.version)) */ #define SH_RELEASE_CPYR "(c) 2020-2021 Contributors to ksh " SH_RELEASE_FORK /* Scripts sometimes field-split ${.sh.version}, so don't change amount of whitespace. */ diff --git a/src/cmd/ksh93/sh/parse.c b/src/cmd/ksh93/sh/parse.c index fe9a3f4c1..b37cf68d2 100644 --- a/src/cmd/ksh93/sh/parse.c +++ b/src/cmd/ksh93/sh/parse.c @@ -385,8 +385,6 @@ void *sh_parse(Shell_t *shp, Sfio_t *iop, int flag) shp->nextprompt = 1; loop_level = 0; label_list = label_last = 0; - if(sh_isoption(SH_INTERACTIVE)) - sh_onstate(SH_INTERACTIVE); if(sh_isoption(SH_VERBOSE)) sh_onstate(SH_VERBOSE); sh_lexopen(lexp,shp,0);