summaryrefslogtreecommitdiff
path: root/Src
AgeCommit message (Collapse)AuthorFilesLines
2019-12-17unposted: Update comment to reflect variable rename in 41012 (= ↵Daniel Shahaf1-1/+1
zsh-5.3.1-182-gd7110d8f0).
2019-12-1545025: fix re-entrancy problem with memory management in readoutput().Peter Stephenson1-25/+36
This could cause a signal received during $(...) to corrupt memory.
2019-12-1245009: POSIX_CD needs to suppress some forms of option.Peter Stephenson1-1/+1
Otherwise forms of argument allowed by POSIX are interpreted as options instead.
2019-12-1245001: Fix zero-length matches with ${...%...}Peter Stephenson1-0/+6
As the shortest match is preferred, zero-length matches beat any other.
2019-12-1145004: Fix typos in commentsMartijn Dekker20-47/+47
2019-12-1044997: GLOB_COMPLETE fix for compctl file completion.Peter Stephenson1-1/+21
Dashes could cause problems in directory prefixes.
2019-12-0444976: fixup describe-key-briefly for visual modeOliver Kiddle1-0/+4
2019-12-01unposted: zstyle: Add a unit test and some comments.Daniel Shahaf1-3/+16
2019-11-19users/24451: zgetcwd: Add a guard against returning an empty string.Daniel Shahaf1-1/+1
2019-11-18users/24445: Add :P modifier to history code.Peter Stephenson1-0/+10
This was in the glob qualifier and variable code but got missed out of the separate history modifier function.
2019-10-2844864: Avoid inifinite loop in tty init.Peter Stephenson1-2/+16
If we can't grab the terminal in interactive mode, give up after 100 goes. This is a completely arbitrary choice; we simply don't know what in the system could change the result of looping further.
2019-10-28unposted: fix indentation (whitespace-only change)romkatv1-30/+30
Indentatin in moveto was broken by 3eea35d0 (my bad), making it difficult to read. This commit reverts it to what it used ot be. While at it, fix indentation in a few other places in the same file.
2019-10-1644841: Better checking of errors from "nice"_RuRo_ (Андрей Стоцкий)1-2/+5
2019-10-10unposted: functions -c: Fix typoDaniel Shahaf1-1/+1
2019-10-04bug fix: infinite loop when tty disappearsromkatv1-1/+1
When TTY disappears and there is at least one fd watcher, raw_getbyte() can enter an infinite loop where it keeps calling poll() over and over again. To reproduce, open a terminal, start zsh and type this: rm -f /tmp/fifo mkfifo /tmp/fifo exec 3<>/tmp/fifo do-nothing() {} zle -F 3 do-nothing Then make TTY disappear. For example, kill the parent with `kill -9 $PPID` and close the terminal window if it's still there. Observe that zsh is consiming 100% CPU. Note that do-nothing() never gets called. This patch makes the poll() loop in raw_getbyte() terminate when TTY is signalling POLLHUP. This makes the behavior consistent with the case where TTY disappears while no fd watchers are installed.
2019-08-2944714: Take account of CDABLE_VARS while checking spellingJun-ichi Takimoto1-0/+2
2019-08-2844710: support RLIMIT_UMTXP on FreeBSDJun-ichi Takimoto2-0/+12
2019-08-2844709: incluce sys/capability.h only if HAVE_CAP_GET_PROC is definedJun-ichi Takimoto1-1/+1
2019-08-1444664: Fix problem with temporary assignment.Peter Stephenson1-1/+3
"foo=bar builtin" inside a function lost any variable from enclosing scope.
2019-08-03Copy functions using functions -c old new.Peter Stephenson1-2/+41
Documentation and test.
2019-08-0344635: Don't apply STAT_NOPRINT to backgrounded jobsPeter Stephenson1-1/+2
2019-08-0344637: = doesn't need quoting in awk regexp.Shlomi Fish1-1/+1
Known to cause warnings in gawk 5.
2019-07-2644582: Fix foregoing commit to use DPUTS() betterKamil Dudka1-6/+4
2019-07-2444566: make sure Zle doesn't crash if history entry not foundKamil Dudka1-2/+12
2019-07-1544509: Prevent crash with modified path / PATH combination.Peter Stephenson1-4/+12
Crash came from "fn() { typeset -U path=($path); unset PATH; }". Note PATH unset is global as only path was made local.
2019-07-0844502: Quote function name for "autoload -X"Bart Schaefer1-1/+1
2019-07-0244480: Don't automatically close externally visible file descroptors.Peter Stephenson2-3/+6
These are descriptors marked FDT_EXTERNAL. Make all sysopen'ed file descriptors FDT_EXTERNAL. Make =(...) call closem() consistent with other substitutions. Document file descriptors are left open.
2019-07-0144469: correct error on missing option argumentMartijn Dekker1-5/+12
2019-06-2444446: Fix here document with file descriptor declarator.Peter Stephenson1-1/+2
Add unit test.
2019-06-2344443: POSIX allows exporting readonly variablesMartijn Dekker1-1/+1
2019-06-2044435: Handling digita arguments for :h and :t.Peter Stephenson4-24/+109
Pick number of leading or trailing path components to substitute. Active in history, brace parameters, glob qualifiers. Add tests for all three environments.
2019-06-19fix multiple bugs in countpromptromkatv1-8/+27
1. Height off by one in the presence of meta characters at the end of the line. The following prompt has height 2 but countprompt used to return 3. PROMPT="${(pl.$COLUMNS..-.)}%f"$'\n' You can observe the effects of the bug with esc-x followed by reset-prompt. 2. Width off by one when a line is broken in the middle of a wide character. Assuming COLUMNS=79, the following prompt has width 2 but countprompt used to return 0. PROMPT="${(pl.40..\u3050.)}" zsh -df Press ctrl-r or type ls<tab> to observe the effects of the bug. 3. Width off by 1-7 when a line is broken in the middle of a tab. Assuming COLUMNS=79, the following prompt has width 1 but countprompt used to return 0. PROMPT="${(pl.10..\t.)}" zsh -df Press Ctrl-R or type ls<TAB> to observe the effects of the bug.
2019-05-2844361: Initialise variables in pattern matching.Peter Stephenson1-10/+12
These are used recursively and it's a bit obscure if there are case where the value can leak.
2019-05-28fix cursor position with ZLE_RPROMPT_INDENT=0romkatv1-20/+20
2019-05-2344345: fix wordcode traversal where ! without a following command could ↵Oliver Kiddle1-2/+7
result in a crash
2019-05-2044307: allow for atoi() returning a negative numberOliver Kiddle4-6/+9
2019-05-1444284: combination of -T and -p to typeset crashed the shell.Oliver Kiddle1-4/+2
2019-05-1444290: job number exceeding int range and wrapping to a negative number ↵Oliver Kiddle1-1/+1
crashed the shell
2019-05-1444291: printf with argument specifier out of range for an int crashed the shellOliver Kiddle1-2/+1
2019-05-1444296: "typeset Q= {X}" crashed the shell.Peter Stephenson1-0/+8
2019-05-1344259: Ensure we can set signals to default even if ignored.Peter Stephenson1-4/+0
Previously the shell didn't take account of signals marked as ignored on entry, which was inconsistent with other behaviour.
2019-05-0844275: Fix compset -p/-s multibyte inconsistency and documentationdana1-1/+1
2019-05-0744274: allow finer control of completion match soring with compadd's -o optionOliver Kiddle3-27/+90
2019-05-0344267: sort: Restore option to ignore backslashesdana1-1/+24
Fix regression introduced by workers/41242
2019-05-0344271: Fix breaks propagated from until or return.Peter Stephenson1-2/+6
If the until or return test caused continuation but there was a pending return, breaks didn't get cancelled causing enclosing scope to skip commands.
2019-04-2544284: Mark SIGQUIT as ignore if ignored on entry to shell.Peter Stephenson1-0/+9
This prevents us from re-enabling it after a fork if it is being ignored.
2019-04-2544254: Handle error case in zgetdir().Peter Stephenson1-1/+11
When retrieving path to current directory by looking for /, ensure we have actually reached / by comparing inode. If the current directory became invalid on some OSes including Linux the parent directory is valid but is the same as the current one.
2019-04-1843288: fix line-broken promptsdana1-3/+8
Without re-breaking the case where a newline character lands in column 0.
2019-04-1244198: Add cd_silent option to suppress all cd outputdana3-2/+4
2019-04-1044168 (tweaked to remove change to errflag): Fix interrupt handling of zle -F.Peter Stephenson1-1/+5
If interrupted by irrelevant interrupt (EINTR only is set), don't set the local error flag, just retry.