summaryrefslogtreecommitdiff
path: root/Src/exec.c
AgeCommit message (Collapse)AuthorFilesLines
2016-09-1639331: Reparent subjob on fork with exited superjob.Peter Stephenson1-1/+18
Fixes case of v() { { vim - } always { true } } ls | v ^Z fg Tentative fix: still a race at exit where zsh forked by ^Z is stopped when restarted.
2016-09-1339305: Fix error handling after parse for here document.Peter Stephenson1-1/+1
Keep the error status the same as before, but also retain the interrupt status if that was non-zero.
2016-08-3139125: More care needed decrementing SHLVL on exec.Stephane Chazelas1-4/+7
Not needed in subshell.
2016-08-2639104: do not hash relative paths in findcmd()Barton E. Schaefer1-1/+1
2016-08-0538991: Make 'whence -v autoloaded-function' shows the defining filename.Daniel Shahaf1-1/+2
This may also fix a problem whereby the %x prompt escape evaluated to a function name rather than a filename, since %x is also backed by scriptfilename.
2016-06-1338653 + 38657: 'functions -T' tracing: recurse into anonymous functions.Daniel Shahaf1-3/+9
2016-04-2638350 (cf. Glenn Smith: 38348): Remove-all warning should warn about the ↵Barton E. Schaefer1-2/+2
root directory as well
2016-03-0938114: Fix hang using ^Z with command subst.Peter Stephenson1-2/+11
In subshells started to perform substitutions disable signals that require interactive handling.
2016-02-0337868: add 'static' to file local variablesJun-ichi Takimoto1-2/+0
2016-01-0137473: check for cshnullglob in command position.Barton E. Schaefer1-0/+5
2015-12-2537435 (+ fix typo): allow execution of empty files as "sh" scriptsBarton E. Schaefer1-1/+2
2015-12-2537434: POSIXBUILTINS "command" should prevent shell exit on errors from ↵Barton E. Schaefer1-3/+5
special builtins
2015-12-0437202: suppress WARN_CREATE_GLOBAL warnings after a forkPeter Stephenson1-1/+1
2015-12-04unposted: fix init_io() calls in previous changePeter Stephenson1-1/+1
2015-11-1137092: make nested ${(P)name} properly refer to parameter on returnPeter Stephenson1-7/+9
2015-10-1436853: replace pushheap/popheap by NEWHEAPS/OLDHEAPS in doshfunc() to ↵Barton E. Schaefer1-201/+201
optimize memory management Includes re-indentation that was not done in the posted patch.
2015-10-03unposted: back out 36707, add test case for 36766Barton E. Schaefer1-1/+1
2015-10-0336766: fix incorrect reset of noerrexit during "if" conditionsBarton E. Schaefer1-1/+2
2015-09-3036707: distinguish ERR_RETURN value of retflag so that execif() can ignore ↵Barton E. Schaefer1-1/+1
it in the test sublist
2015-09-2736651: WARN_CREATE_GLOBAL += math expressionsDaniel Shahaf1-1/+2
Without this, '() { (( x=42 )) }' and '() { for (( i=0; … )) }' wouldn't warn about $x and $i, respectively, being created global.
2015-09-0236378: skip directories when looking for files to autoloadPeter Stephenson1-1/+3
2015-08-1136104: change order of child_block() and dont_queue_signals() to resolve yet ↵Barton E. Schaefer1-1/+1
another race condition
2015-08-0936022 fix bug that some loop constructs could not be interrupted, revise ↵Barton E. Schaefer1-7/+42
signal queueing There are two underlying ideas here: (1) Keeping signals queued around anything that's doing memory management (including push/pop of the heap) has become crucial. (2) Anytime the shell is going to run a command, be it buitin or external, it must be both safe and necessary to process any queued signals, so that the apparent order of signal arrival and command execution is preserved.
2015-07-2335849: close fd's from process substitution after forkPeter Stephenson1-2/+3
Leaving these hanging in parent could cause deadlock: test added.
2015-07-0935751: Fix ERR_RETURN and ERR_EXIT in "else"Peter Stephenson1-1/+7
2015-06-2935655: APPEND_CREATE option for POSIX copmatible NO_CLOBBERPeter Stephenson1-1/+2
2015-06-2735634: handle failure of gettempname() in namedpipe()Barton E. Schaefer1-0/+4
2015-06-2535604: create empty arrays in typeset with array=()Peter Stephenson1-9/+12
2015-06-24various posts: Implement assignment parsing for typeset.Peter Stephenson1-18/+158
Typeset assignments now work like raw assignments except for no "+=" and no GLOB_ASSIGN. Documented in typeset builtin doc and mentioned in release notes. Tests to ensure basic sanity. Enabled by default, can be turned off by "disable -r" with typeset family of commands.
2015-06-1635493: erase $_ when the command line is an assignmentBarton E. Schaefer1-0/+1
2015-06-02GLOB_ASSIGN should only affect scalar assignmentsMikael Magnusson1-2/+2
2015-05-2835318: POSIX_BUILTINS behaviour for getopts.Peter Stephenson1-4/+8
It needs to keep OPTIND, as well as the index within the string pointed to by OPTIND, global in this case.
2015-05-22Tweak test for function level of exit.Peter Stephenson1-1/+1
Sometimes local level jumps so we need an inequality instead of an equality.
2015-05-13users/20203: nested functions in always blocks when exit pendingPeter Stephenson1-1/+9
2015-04-2834989: AUTO_CD needs to call cd --.Peter Stephenson1-0/+1
Otherwise directories looking like options do the wrong thing.
2015-04-2834979: Preserve job text when doing shell job fix.Peter Stephenson1-1/+14
This handles list_pipe_text in execlist() along with other variables that are saved and restored and, in the special case of source, cleared.
2015-04-2434955: save and restore list_pipe_job with its friendsPeter Stephenson1-2/+4
This is needed to stop source() messing up job control.
2015-04-1534900: assignment before an "exec".Peter Stephenson1-7/+14
Without POSXIBUILTIN: restore after, so we only get side effects. With POSXIBUILTIN: keep set variable
2015-04-1534887: Fix POSIX_BUILTINS with assignment.Peter Stephenson1-7/+21
In the form var=val command special-builtin-or-func the var is restored after execution, unlike the case where "command" is absent. Clear up case in code that handles this. Add tests.
2015-02-2034590: queue_signals() around more scopes that manipulate global stateBarton E. Schaefer1-1/+3
2015-02-1634530: PRINT_EXIT_VALUE with anonymous functions.Peter Stephenson1-2/+12
Simpler fix, avoiding structural changes.
2015-02-1334546: further $_ with anon function fix.Peter Stephenson1-4/+13
Also add tests.
2015-02-1234519: $_ for arguments of anonymous functionPeter Stephenson1-1/+4
2015-02-1234514: Back out 34485, an alternate solution needs to be worked out.Barton E. Schaefer1-25/+26
(Tweaked to keep the unrelated hunk of the E01 test.)
2015-02-0934485: More rationalisation for anonymous functions.Peter Stephenson1-26/+25
Don't attempt to treat as "simple" case as there are too many hidden problems. Pull out some post-execution functions to a common case in execcmd().
2015-01-20users/19751: remove error on failure to close file descriptor by number.Peter Stephenson1-1/+6
Keep it when closing file descriptor stored in a variable, i.e. explicitly opened by the user.
2015-01-1834322: bug with interface to parsestr() etc.Peter Stephenson1-4/+5
Was showing up in places like ${(e)...} where command substitution could reallocate the token string, but actually there was never any guarantee that the lexer wouldn't do that, so this was always a bit iffy.
2015-01-09Rearrange context saving.Peter Stephenson1-4/+4
Variables are now associated with the module that declares them, being initialised and saved/restored there. However, as many variables are used for communication between modules, many of them are set in multiple places, so the assignment is ambiguous.
2015-01-0634134: anon funcs: don't leak shf and related dataMikael Magnusson1-0/+6
Found by Coverity (Issue 439076).
2014-12-2734064: assignment before command replaces array with export even when KSH_ARRAYSTakeshi Banse1-0/+2