summaryrefslogtreecommitdiff
path: root/Src
AgeCommit message (Collapse)AuthorFilesLines
2017-11-0241866: No error unsetting nonexistent function for POSIXBUILTINSMartijn Dekker2-1/+6
2017-10-1741902: ${(z)...} continues parsing on unmatched quote when CSH_JUNKIE_QUOTES ↵Barton E. Schaefer1-4/+10
is set Tests for 41902 and 41873
2017-10-1341873: temporarily disable effects of ${(Z:n:)...} for parsing $(...) within ↵Barton E. Schaefer1-1/+5
the parameter value Also fix minor typo in commit b3fa5c52 ChangeLog.
2017-10-1341877: Separate out SH_FILE_EXPANSION loop from parameter substitution.Peter Stephenson1-16/+23
Parameter substitution can add nodes that need to be rescanned by it, but not by file expansion, so the two don't play well together.
2017-10-1141835: handle multibyte characters with compset -p and -sOliver Kiddle1-11/+37
2017-10-0841828, 41830: skip SHFILEEXPANSION for new nodes added by stringsubst() in ↵Barton E. Schaefer1-2/+17
prefork()
2017-10-0741824: fix to not complete rest args from an _arguments set alongside the ↵Oliver Kiddle1-16/+16
argument to and option in a separate set
2017-10-0441802 (minor tweaks): use heap during shell function call.Peter Stephenson2-70/+87
Replaces stack for more efficient memory management. Also fix debug message when FUNCNEST is increased.
2017-10-0241787 (plus minor tweaks): use $FUNCSTACK for function nesting depth.Peter Stephenson2-11/+20
Initialised from existing configuration value.
2017-10-01Add typeset -p1, like typeset -p with newlinesPeter Stephenson4-28/+67
2017-09-2941789: Don't save fd if -1.Peter Stephenson1-8/+11
We try to move an fd which isn't opend but it will feel. This needs handling specially in the new code for marking saved fd's.
2017-09-2841772: fix bug in handling of long options with _arguments' -A optionOliver Kiddle1-1/+1
2017-09-2741767: preserve nonzero exit status on interruptBarton E. Schaefer1-1/+2
2017-09-2741764 (test tweaked): allow [key]+=value when modifying arraysPeter Stephenson3-12/+48
2017-09-2641761: Ensure status from interrupt is propagated by builtinPeter Stephenson1-2/+9
2017-09-2541747: Don't create hash entry if just checking existence.Peter Stephenson4-9/+18
Pass a flag in indicating this case.
2017-09-24Updates for ksh array element syntax.Peter Stephenson5-147/+224
Move detection of key/value pairs down into prefork(). Detect normal array assignment and [key]=val array assignemnt separately. Mark key / value pairs with Marker and pass up flag. Deal with marked triads specially later on.
2017-09-21unposted (cf. 41672): checkrmall: Record the 41672 bug in a TODO.Daniel Shahaf1-0/+3
2017-09-21unposted (cf. 41707): internal: Document the count==0 case of checkrmall().Daniel Shahaf1-1/+3
2017-09-2041736: NO_INTERACTIVE_COMMENTS in $(...)Barton E. Schaefer1-1/+6
2017-09-1841723: one more case of 41627 in "while" loops.Barton E. Schaefer1-1/+1
2017-09-14More [key]=value tweaksPeter Stephenson1-3/+5
Some rephrasings. Update typeset -p for associative arrays to use new syntax.
2017-09-13First go at var=([key]=value) syntax.Peter Stephenson4-33/+206
Works for both normal and typeset case, also var+=... Still to do: allow to be mixed with straight array assignment, improve typeset -p, implement [key]+=value.
2017-09-1341688: builtin wait for all jobs should ignore STAT_NOPRINTPeter Stephenson1-1/+2
2017-09-11unposted: internal: Document zreaddir().Daniel Shahaf1-0/+10
2017-09-1141666: zpty compatibility for OpenBSDThierry Ghelew1-1/+6
2017-09-1141668: New --emulate option on invocation.Peter Stephenson3-35/+107
This sets the shell emulation mode similarly to ARGV0=... which doesn't work from other shells. Note that this gives more comprehensive emulation than running emulate within the shell.
2017-09-1041662: exec -a arguments weren't sanitisedPeter Stephenson1-0/+3
2017-09-1041661: Need to remove tokens before using bufferwords() for (z)Peter Stephenson1-2/+6
2017-09-0541641: Some math operations shouldn't be lvalues.Peter Stephenson1-8/+2
This includes pre- and post- increment and decrement. Simply mark all values after operations as rvalues.
2017-09-0441633: Fix problem backgrounding function definitions.Peter Stephenson1-1/+6
Owing to being marked as simple sublists the instruction to background was ignored. This applied to anonymous functions.
2017-08-31Fix problem with ERR_RETURN.Peter Stephenson1-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.
2017-08-2941608 (plus tests): restore ERR_EXIT before function.Peter Stephenson1-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.
2017-08-2441590 modified as 41595: make ERR_RETURN more logical.Peter Stephenson5-19/+48
It now operates separately at each function depth. To keep ERR_EXIT global, make the noerrexit variable usd bit flags. Extend tests.
2017-08-15posted but has not shown up: fix fd problem in subshell.Peter Stephenson2-3/+27
Record fd's that have been saved in fdtable and if the shell forks close them as they will never be restored.
2017-08-1441542: Fix pcre logic for extracting matched parentheses.Peter Stephenson1-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.
2017-08-1141527 (tweaked for heap memory): fix [[ -<cond> ]] from modulesPhil Pennock1-2/+13
2017-08-0941504: make empty strings work in case patterns with no leading parenthesisPeter Stephenson2-13/+41
2017-08-08Revert "41499 (with one further tweak): POSIX_STRINGS behaviour."Peter Stephenson1-18/+2
This reverts commit 2eacbef91913fe967335812900d43cf2edfa54d9. Conflicts: ChangeLog
2017-08-0741499 (with one further tweak): POSIX_STRINGS behaviour.Peter Stephenson1-2/+18
Ignore a terminating delimiter when splitting as separators despite being called separators are terminators.
2017-08-0341484: Make ${(q+)...} quote backsleshes.Martijn Dekker1-1/+5
2017-07-2741464, 41466: With POSIX_BUILTINS, exec only executes sexternal commands.Peter Stephenson1-2/+12
Document the default behaviour and add a test.
2017-07-1341420: "{.." wasn't check for brace expansion properlyPeter Stephenson1-0/+2
2017-07-0941402: Delay has_tokens() in ecstrcode as may not be neededSebastian Gniazdowski1-1/+5
2017-07-0941402: Add hasher to ecstrcode to reduce string comparisonsSebastian Gniazdowski2-1/+6
2017-07-04Delay processing "disown" for superjob.Peter Stephenson2-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.
2017-07-04Avoid invalid access with isearch in completion listMaxime de Roucy1-5/+7
2017-07-0341375: GDBM interface bug fixesSebastian Gniazdowski1-63/+93
2017-07-0241386: when backgrounding a STAT_CURSH job, remove the flag.Peter Stephenson1-1/+3
This typical applies to a STAT_SUPERJOB. It prevents it from getting copied interrupts as a foreground process.
2017-07-0222760: fix partial string length reports with NO_MULTIBYTEPeter Stephenson1-1/+1