summary refs log tree commit diff
path: root/Src
Commit message (Collapse)AuthorAgeFilesLines
* 41662: exec -a arguments weren't sanitisedPeter Stephenson2017-09-101-0/+3
|
* 41661: Need to remove tokens before using bufferwords() for (z)Peter Stephenson2017-09-101-2/+6
|
* 41641: Some math operations shouldn't be lvalues.Peter Stephenson2017-09-051-8/+2
| | | | | This includes pre- and post- increment and decrement. Simply mark all values after operations as rvalues.
* 41633: Fix problem backgrounding function definitions.Peter Stephenson2017-09-041-1/+6
| | | | | Owing to being marked as simple sublists the instruction to background was ignored. This applied to anonymous functions.
* Fix problem with ERR_RETURN.Peter Stephenson2017-08-311-4/+3
| | | | | | | It wasn't suppressed properly in the code following an if in some circumstances, in particular in initialsation scripts and also in a nested function where the caller had suppressed it.
* 41608 (plus tests): restore ERR_EXIT before function.Peter Stephenson2017-08-291-1/+1
| | | | | | | There was an exception to the usual ERR_EXIT pattern that causes problems when executing a function in an else branch. It seems the exception is no longer needed as the regression tests pass without it.
* 41590 modified as 41595: make ERR_RETURN more logical.Peter Stephenson2017-08-245-19/+48
| | | | | | | | It now operates separately at each function depth. To keep ERR_EXIT global, make the noerrexit variable usd bit flags. Extend tests.
* posted but has not shown up: fix fd problem in subshell.Peter Stephenson2017-08-152-3/+27
| | | | | Record fd's that have been saved in fdtable and if the shell forks close them as they will never be restored.
* 41542: Fix pcre logic for extracting matched parentheses.Peter Stephenson2017-08-141-25/+43
| | | | | | | | | | When we went off the end of the array but measured the length implicitly, we got lucky before. After 41308 we were looking up lengths in stale memory. Rename some variables, clean up the logic, be easier to understand. Add tests.
* 41527 (tweaked for heap memory): fix [[ -<cond> ]] from modulesPhil Pennock2017-08-111-2/+13
|
* 41504: make empty strings work in case patterns with no leading parenthesisPeter Stephenson2017-08-092-13/+41
|
* Revert "41499 (with one further tweak): POSIX_STRINGS behaviour."Peter Stephenson2017-08-081-18/+2
| | | | | | | This reverts commit 2eacbef91913fe967335812900d43cf2edfa54d9. Conflicts: ChangeLog
* 41499 (with one further tweak): POSIX_STRINGS behaviour.Peter Stephenson2017-08-071-2/+18
| | | | | Ignore a terminating delimiter when splitting as separators despite being called separators are terminators.
* 41484: Make ${(q+)...} quote backsleshes.Martijn Dekker2017-08-031-1/+5
|
* 41464, 41466: With POSIX_BUILTINS, exec only executes sexternal commands.Peter Stephenson2017-07-271-2/+12
| | | | Document the default behaviour and add a test.
* 41420: "{.." wasn't check for brace expansion properlyPeter Stephenson2017-07-131-0/+2
|
* 41402: Delay has_tokens() in ecstrcode as may not be neededSebastian Gniazdowski2017-07-091-1/+5
|
* 41402: Add hasher to ecstrcode to reduce string comparisonsSebastian Gniazdowski2017-07-092-1/+6
|
* Delay processing "disown" for superjob.Peter Stephenson2017-07-042-0/+9
| | | | | | | This is a job forked from the current shell when a job partly running from the current shell was suspended. When all associated processes started from the main shell are finished the job is continued and at this point the disown can complete.
* Avoid invalid access with isearch in completion listMaxime de Roucy2017-07-041-5/+7
|
* 41375: GDBM interface bug fixesSebastian Gniazdowski2017-07-031-63/+93
|
* 41386: when backgrounding a STAT_CURSH job, remove the flag.Peter Stephenson2017-07-021-1/+3
| | | | | This typical applies to a STAT_SUPERJOB. It prevents it from getting copied interrupts as a foreground process.
* 22760: fix partial string length reports with NO_MULTIBYTEPeter Stephenson2017-07-021-1/+1
|
* 41368: Add missing unqueue_signals() to compctl.Peter Stephenson2017-06-271-0/+2
|
* 41308 (tweaked): behaviour of PCRE with NUL bytesPhil Pennock2017-06-221-11/+26
|
* 41319: dupstring a possibly readonly string before modifyingMikael Magnusson2017-06-191-1/+1
|
* 41322: reduce number of changes in signal queuing/blocking state during ↵Barton E. Schaefer2017-06-191-3/+5
| | | | shingetline() to improve read speed
* 41317: use heap allocation in getoutputfile() to plug memory leakBarton E. Schaefer2017-06-191-2/+2
| | | | Heap is usable ever since addfilelist() of workers/31528 (commit 3c573222).
* 41242: zstrbcmp(...) removed in favor of zstrcmp(..., ↵Barton E. Schaefer2017-06-172-48/+3
| | | | | | SORTIT_IGNORING_BACKSLASHES) This should make sorting consistent in completion listings vs. elsewhere.
* 41275: Leave stdin open when executing widgetsStephane Chazelas2017-06-131-0/+7
|
* 41284: Fix NULL dereference in cd.Peter Stephenson2017-06-131-1/+10
| | | | | This happened in sh compatiblity mode if HOME was not set and cd was used with no argument.
* 41244: Add zmodload -s option.Peter Stephenson2017-06-124-9/+9
| | | | | | | | Doesn't complain if module is unavailable, but prints more obscure errors. Use existing low-level silent flag by passing through intermediate module loading hierarchy.
* 41239: Save and restore default history event on context stack.Peter Stephenson2017-06-072-0/+3
| | | | | This ensures that the default event set by an expansion in ZLE doesn't propagate to the command line expansion.
* 41225: sethparam() should not attempt to change special parameters into hashesBarton E. Schaefer2017-06-051-6/+11
|
* 41191: Check for immortal thingies when checking for specific thingiesPeter Stephenson2017-06-013-5/+13
|
* 41164: Don't free a history entry if it's curline.Peter Stephenson2017-05-303-29/+18
| | | | | | This replaces 41113 / 94014ff65b with a simple local change for the immediate problem. It's not entirely clear if this reflects wider changes in the structure of the history code.
* 41151: propagate flags when creating new parameterSebastian Gniazdowski2017-05-281-1/+1
|
* 41153: finish module setup only after all error conditions have been checkedSebastian Gniazdowski2017-05-281-4/+4
|
* 41146: careul in GDBM freeing strings with embedded nullsSebastian Gniazdowski2017-05-241-10/+29
|
* 40898: fix GDBM error handlingSebastian Gniazdowski2017-05-241-1/+2
|
* 41142: Ensure close-on-exec is passed to moved file descriptorStephane Chazelas2017-05-231-10/+20
|
* 41113 (tweaked): Save current line linkage to history ring.Peter Stephenson2017-05-183-15/+29
| | | | | | | | | | When saving history state save whether the current history line is linked into the ring and remove it, and restore as appropriate later. This avoids surprises where the history ring is freed and incorrectly frees the current state in curline, which has a different allocation strategy. Original patch tweaked to make restoring more logical.
* 41090: Replace iswprint() if unicode9 is enabled.Jun-ichi Takimoto2017-05-127-336/+24
| | | | If wcwidth() or iswprint() is broken, force enable unicode9.
* 41096: Don't assume null termination copying string.Peter Stephenson2017-05-111-1/+2
| | | | | | | At this point the string may contain embedded nulls or not have a null termination at all. Also, as we always have the length memcpy() is more efficient.
* 40181: Fix buffer overrun in xsymlinks.Peter Stephenson2017-05-091-3/+11
| | | | | There was no check for copying to the internal xbuf2 for a preliminary test.
* 41078: Empty psvar could cause bad dereference in prompt expansionPeter Stephenson2017-05-091-1/+1
|
* 40173: Off-by-one error checking for {varid}.Peter Stephenson2017-05-081-1/+1
| | | | | This caused a single unprintable character in braces before a redirection to be treated as an indentifier.
* users/22688: Allow mixing redirs and arguments after anon functions.Peter Stephenson2017-05-081-4/+15
| | | | | These are parsed differently from the case of normal functions which can't take normal arguments at that point.
* Fix combination of HERE document and |&.Peter Stephenson2017-05-081-1/+1
| | | | | | | | A missing flag setting up the HERE document mean that the size of the wordcode needed to append the 2>&1 was counted incorrectly, so the resulting wordcode was garbled. Add test.
* 41043: Close pipes in shell when disowning background job.Peter Stephenson2017-05-031-0/+1
| | | | This was missing in the case of &,, causing a file descriptor leak.