about summary refs log tree commit diff
path: root/Src
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* 41020: Fix "command -p"; "-p" was incorrectly left in command argumentsPeter Stephenson2017-04-281-1/+8
| | | | Also add tests for known precommand modifier issues.
* 41012: Fix premature exit from nested function in EXIT trap.Peter Stephenson2017-04-273-8/+31
| | | | | | Also add check so we don't delay an exit if we were already in an EXIT trap for the main shell, as we should in that case leave immediately.
* 41008: Handle expansions for precommand modifiersPeter Stephenson2017-04-262-35/+135
|
* 40995: Don't disable alias expansion when finding command substitution limitsPeter Stephenson2017-04-231-3/+0
| | | | | This is needed in some unusual cases in order to identify the exit condition without encountering a parse error.
* 40994: unmeta_one() need not count MetaJun-ichi Takimoto2017-04-231-8/+1
|
* 40990: Fix crash with bogus path in sh emaulation.Peter Stephenson2017-04-211-14/+37
| | | | | | When startying in sh emulation don't link PATH-style parameters to array equivalents. To allow this to function, don't check for the linkage when exporting the colon-separated parameter.
* 40977: "emulate" disallows "--help" and "--version"Barton E. Schaefer2017-04-151-2/+2
|
* 40935: User names need metafying.Orlov Sergey2017-04-101-3/+3
| | | | | On some systems they can contain 8-bit characters and on all systems this is logically correct anyway.
* 40940: untokenize names of condition features before attempting to look up ↵Bart Schaefer2017-04-071-2/+2
| | | | | | the definition from a module. Necessary because of 40760 (tokenization of '-' as Dash).
* 40933: Ensure we get job text in sourced files.Peter Stephenson2017-04-041-2/+2
| | | | | | | This was turned off explicitly as it was assumed not to be needed, but it is when code in a sourced file is suspended. We'll need to see if this makes start up inefficient.
* 40932: Parameter subscripts need to count parentheses.Peter Stephenson2017-04-031-3/+8
| | | | Otherwise they can terminate in the middle of an expression.
* 40929 (replaces 40598): paramsubst() should always return scalar when ↵Barton E. Schaefer2017-04-021-13/+8
| | | | | | | | | PREFORK_SINGLE was passed in from prefork() Previous commit (74fe4d09) consumed too much of the input linked list, leading to later expansions being skipped. This commit converts from array to string sooner, but may thereby alter rc_expand_param and array element uniqueness behavior.
* 40891: fix more zero-length matches.Peter Stephenson2017-03-231-1/+3
| | | | This time at the end of the trial string.
* 22601: Fix for parameter substitution pattern matches.Peter Stephenson2017-03-231-2/+6
| | | | | It was not possible to math against a zero-length string in some cases.
* 40832: fix $x:P when PWD=/Barton E. Schaefer2017-03-111-2/+10
|
* 40819: Fix IS_DASH test in BRACE_CCL handlingPeter Stephenson2017-03-101-1/+2
|
* unposted: declare file local variables as staticJun-ichi Takimoto2017-03-101-2/+2
|
* unposted: silence warnings on CygwinJun-ichi Takimoto2017-03-101-1/+2
| | | | On Cygwin, h_name in struct hostent is 'const char*'
* 40796: MAGIC_EQUAL_SUBST not needed with parsed assignment.Peter Stephenson2017-03-091-5/+20
| | | | | | If typeset family builtins are recognised as keywords then the value is handled as a separate expansion and we don't need the old magic behaviour, even if the option is set.
* 40799: fix $- expansion partly broken by 40760Barton E. Schaefer2017-03-081-1/+3
|
* 40763: count wide characters and Cmatcher pointers more sanely in ↵Barton E. Schaefer2017-03-083-58/+60
| | | | | | | cfp_matcher_pats(), and count characters in pattern_match() the same way to stay in sync Might not fix wide-char matching in completion matcher-lists but should avoid wild pointer crash
* 40745 + 40753: Fix 'unset ZLE_RPROMPT_INDENT' not restoring the default ↵Daniel Shahaf2017-03-082-2/+20
| | | | | | | | | | behaviour. To reproduce: RPS1=foo ZLE_RPROMPT_INDENT=42 unset ZLE_RPROMPT_INDENT
* 40760: Always tokenize unquoted - to Dash.Peter Stephenson2017-03-0710-67/+102
| | | | | | This fixes use of pattern match character ranges in unusual contexts. Attempt to detect a tokenized - in cases where we don't care.
* 40726: add "zcurses resize" for sane terminal size changeSebastian Gniazdowski2017-03-051-0/+69
|
* 40781: optimize array assignment, similar to 39995 for string assignmentSebastian Gniazdowski2017-03-041-15/+48
|
* 40654: exit cleanly from special POSIXBUILTINS in subshellsBarton E. Schaefer2017-03-041-0/+1
| | | | This patch overloads the zsh_subshell counter which is meant for $ZSH_SUBSHELL, but no one has suggested a working alternate test.
* 40170: Fix up error resetting in curses module.Sebastian Gniazdowski2017-03-031-23/+12
| | | | | Update comment to remove confusion. The comment was based on incorrecto expectations, and the problems referred to seem to be fixed.
* 40702: new KEYS_QUEUED_COUNT ZLE variablePeter Stephenson2017-03-031-0/+11
|
* 40681: strftime builtin should return 1 if ztrftime() returns -1Jun-ichi Takimoto2017-03-021-2/+6
|
* 40622 with typos fixed: functions -Ms.Peter Stephenson2017-03-012-13/+42
| | | | | | This adds the capability for mathematical functions based on shell functions to have a string argument. Module functions have had this for a long time.
* 40650: redo 40508 and 40626 with comments explaining what is actually going onBarton E. Schaefer2017-02-261-9/+25
|
* Revert 40626 which broke tests.Daniel Shahaf2017-02-261-2/+2
|
* 40640: the (A) parameter flag forces array result even if assignment syntax ↵Barton E. Schaefer2017-02-251-0/+11
| | | | is not used
* 40626: Make $options re-settable.Daniel Shahaf2017-02-251-2/+2
| | | | | | Follow-up to 40508. Reported-by: James McGlashan
* 40624: conditionally handle WIFCONTINUED to properly set SP_RUNNING process ↵Barton E. Schaefer2017-02-231-0/+5
| | | | status
* 40604: revert to the old method if getutent() is not availableJun-ichi Takimoto2017-02-231-4/+22
|
* 40598: paramsubst() should always return scalar when PREFORK_SINGLE was passedBarton E. Schaefer2017-02-201-1/+14
|
* 40593: SHWORDSPLIT + unset IFS should cause default splitting of $@Barton E. Schaefer2017-02-201-1/+2
|
* 40576 (tweaked): entersubsh(): unblock any signals that were blocked for ↵Barton E. Schaefer2017-02-201-3/+14
| | | | | | trap handling Also small improvement to loop that resets trap handlers
* 40558, 40562: General improvements to zsh/db/gdbm moduleSebastian Gniazdowski2017-02-172-72/+437
|
* 40524: do not free a null arrayBarton E. Schaefer2017-02-131-1/+2
|