Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | 39359: Fix remaining race with orphaned subjob. | Peter Stephenson | 2016-09-16 | 1 | -1/+43 | |
| | | | | | | When shell is forked to run right hand side of pipieline it should use its own PID as process group if the left hand side of the pipeline has already exited. | |||||
* | 39331: Reparent subjob on fork with exited superjob. | Peter Stephenson | 2016-09-16 | 1 | -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. | |||||
* | 39305: Fix error handling after parse for here document. | Peter Stephenson | 2016-09-13 | 1 | -1/+1 | |
| | | | | | Keep the error status the same as before, but also retain the interrupt status if that was non-zero. | |||||
* | 39125: More care needed decrementing SHLVL on exec. | Stephane Chazelas | 2016-08-31 | 1 | -4/+7 | |
| | | | | Not needed in subshell. | |||||
* | 39104: do not hash relative paths in findcmd() | Barton E. Schaefer | 2016-08-26 | 1 | -1/+1 | |
| | ||||||
* | 38991: Make 'whence -v autoloaded-function' shows the defining filename. | Daniel Shahaf | 2016-08-05 | 1 | -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. | |||||
* | 38653 + 38657: 'functions -T' tracing: recurse into anonymous functions. | Daniel Shahaf | 2016-06-13 | 1 | -3/+9 | |
| | ||||||
* | 38350 (cf. Glenn Smith: 38348): Remove-all warning should warn about the ↵ | Barton E. Schaefer | 2016-04-26 | 1 | -2/+2 | |
| | | | | root directory as well | |||||
* | 38114: Fix hang using ^Z with command subst. | Peter Stephenson | 2016-03-09 | 1 | -2/+11 | |
| | | | | | In subshells started to perform substitutions disable signals that require interactive handling. | |||||
* | 37868: add 'static' to file local variables | Jun-ichi Takimoto | 2016-02-03 | 1 | -2/+0 | |
| | ||||||
* | 37473: check for cshnullglob in command position. | Barton E. Schaefer | 2016-01-01 | 1 | -0/+5 | |
| | ||||||
* | 37435 (+ fix typo): allow execution of empty files as "sh" scripts | Barton E. Schaefer | 2015-12-25 | 1 | -1/+2 | |
| | ||||||
* | 37434: POSIXBUILTINS "command" should prevent shell exit on errors from ↵ | Barton E. Schaefer | 2015-12-25 | 1 | -3/+5 | |
| | | | | special builtins | |||||
* | 37202: suppress WARN_CREATE_GLOBAL warnings after a fork | Peter Stephenson | 2015-12-04 | 1 | -1/+1 | |
| | ||||||
* | unposted: fix init_io() calls in previous change | Peter Stephenson | 2015-12-04 | 1 | -1/+1 | |
| | ||||||
* | 37092: make nested ${(P)name} properly refer to parameter on return | Peter Stephenson | 2015-11-11 | 1 | -7/+9 | |
| | ||||||
* | 36853: replace pushheap/popheap by NEWHEAPS/OLDHEAPS in doshfunc() to ↵ | Barton E. Schaefer | 2015-10-14 | 1 | -201/+201 | |
| | | | | | | optimize memory management Includes re-indentation that was not done in the posted patch. | |||||
* | unposted: back out 36707, add test case for 36766 | Barton E. Schaefer | 2015-10-03 | 1 | -1/+1 | |
| | ||||||
* | 36766: fix incorrect reset of noerrexit during "if" conditions | Barton E. Schaefer | 2015-10-03 | 1 | -1/+2 | |
| | ||||||
* | 36707: distinguish ERR_RETURN value of retflag so that execif() can ignore ↵ | Barton E. Schaefer | 2015-09-30 | 1 | -1/+1 | |
| | | | | it in the test sublist | |||||
* | 36651: WARN_CREATE_GLOBAL += math expressions | Daniel Shahaf | 2015-09-27 | 1 | -1/+2 | |
| | | | | | Without this, '() { (( x=42 )) }' and '() { for (( i=0; … )) }' wouldn't warn about $x and $i, respectively, being created global. | |||||
* | 36378: skip directories when looking for files to autoload | Peter Stephenson | 2015-09-02 | 1 | -1/+3 | |
| | ||||||
* | 36104: change order of child_block() and dont_queue_signals() to resolve yet ↵ | Barton E. Schaefer | 2015-08-11 | 1 | -1/+1 | |
| | | | | another race condition | |||||
* | 36022 fix bug that some loop constructs could not be interrupted, revise ↵ | Barton E. Schaefer | 2015-08-09 | 1 | -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. | |||||
* | 35849: close fd's from process substitution after fork | Peter Stephenson | 2015-07-23 | 1 | -2/+3 | |
| | | | | Leaving these hanging in parent could cause deadlock: test added. | |||||
* | 35751: Fix ERR_RETURN and ERR_EXIT in "else" | Peter Stephenson | 2015-07-09 | 1 | -1/+7 | |
| | ||||||
* | 35655: APPEND_CREATE option for POSIX copmatible NO_CLOBBER | Peter Stephenson | 2015-06-29 | 1 | -1/+2 | |
| | ||||||
* | 35634: handle failure of gettempname() in namedpipe() | Barton E. Schaefer | 2015-06-27 | 1 | -0/+4 | |
| | ||||||
* | 35604: create empty arrays in typeset with array=() | Peter Stephenson | 2015-06-25 | 1 | -9/+12 | |
| | ||||||
* | various posts: Implement assignment parsing for typeset. | Peter Stephenson | 2015-06-24 | 1 | -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. | |||||
* | 35493: erase $_ when the command line is an assignment | Barton E. Schaefer | 2015-06-16 | 1 | -0/+1 | |
| | ||||||
* | GLOB_ASSIGN should only affect scalar assignments | Mikael Magnusson | 2015-06-02 | 1 | -2/+2 | |
| | ||||||
* | 35318: POSIX_BUILTINS behaviour for getopts. | Peter Stephenson | 2015-05-28 | 1 | -4/+8 | |
| | | | | | It needs to keep OPTIND, as well as the index within the string pointed to by OPTIND, global in this case. | |||||
* | Tweak test for function level of exit. | Peter Stephenson | 2015-05-22 | 1 | -1/+1 | |
| | | | | | Sometimes local level jumps so we need an inequality instead of an equality. | |||||
* | users/20203: nested functions in always blocks when exit pending | Peter Stephenson | 2015-05-13 | 1 | -1/+9 | |
| | ||||||
* | 34989: AUTO_CD needs to call cd --. | Peter Stephenson | 2015-04-28 | 1 | -0/+1 | |
| | | | | Otherwise directories looking like options do the wrong thing. | |||||
* | 34979: Preserve job text when doing shell job fix. | Peter Stephenson | 2015-04-28 | 1 | -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. | |||||
* | 34955: save and restore list_pipe_job with its friends | Peter Stephenson | 2015-04-24 | 1 | -2/+4 | |
| | | | | This is needed to stop source() messing up job control. | |||||
* | 34900: assignment before an "exec". | Peter Stephenson | 2015-04-15 | 1 | -7/+14 | |
| | | | | | | Without POSXIBUILTIN: restore after, so we only get side effects. With POSXIBUILTIN: keep set variable | |||||
* | 34887: Fix POSIX_BUILTINS with assignment. | Peter Stephenson | 2015-04-15 | 1 | -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. | |||||
* | 34590: queue_signals() around more scopes that manipulate global state | Barton E. Schaefer | 2015-02-20 | 1 | -1/+3 | |
| | ||||||
* | 34530: PRINT_EXIT_VALUE with anonymous functions. | Peter Stephenson | 2015-02-16 | 1 | -2/+12 | |
| | | | | Simpler fix, avoiding structural changes. | |||||
* | 34546: further $_ with anon function fix. | Peter Stephenson | 2015-02-13 | 1 | -4/+13 | |
| | | | | Also add tests. | |||||
* | 34519: $_ for arguments of anonymous function | Peter Stephenson | 2015-02-12 | 1 | -1/+4 | |
| | ||||||
* | 34514: Back out 34485, an alternate solution needs to be worked out. | Barton E. Schaefer | 2015-02-12 | 1 | -25/+26 | |
| | | | | (Tweaked to keep the unrelated hunk of the E01 test.) | |||||
* | 34485: More rationalisation for anonymous functions. | Peter Stephenson | 2015-02-09 | 1 | -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(). | |||||
* | users/19751: remove error on failure to close file descriptor by number. | Peter Stephenson | 2015-01-20 | 1 | -1/+6 | |
| | | | | | Keep it when closing file descriptor stored in a variable, i.e. explicitly opened by the user. | |||||
* | 34322: bug with interface to parsestr() etc. | Peter Stephenson | 2015-01-18 | 1 | -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. | |||||
* | Rearrange context saving. | Peter Stephenson | 2015-01-09 | 1 | -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. | |||||
* | 34134: anon funcs: don't leak shf and related data | Mikael Magnusson | 2015-01-06 | 1 | -0/+6 | |
| | | | | Found by Coverity (Issue 439076). |