Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 45181: Fix workers/45164: ${(S)%%} will now consider the empty string as a ↵ | Daniel Shahaf | 2020-01-02 | 1 | -2/+2 |
| | | | | potential match. | ||||
* | 24581: Fix array assignments in shell word splitting and completion. | Peter Stephenson | 2019-12-31 | 2 | -1/+13 |
| | | | | | | Assignments after the first were not recognised as such as without the full parser the state didn't return to command position. Fix this in bufferwords() and the completion miniparser. | ||||
* | unposted: zerrmsg(): Fix macro guard missed in previous commit | dana | 2019-12-26 | 1 | -2/+0 |
| | |||||
* | internal: Allow %L in zerrmsg() in non-debug builds, too. | Daniel Shahaf | 2019-12-26 | 1 | -2/+0 |
| | | | | This will let error messages include long integers. | ||||
* | 45083: Add signal protection to execarith(). | Peter Stephenson | 2019-12-18 | 1 | -0/+3 |
| | | | | | Otherwise we could get re-entrancy in memory functions when setting variables. | ||||
* | 45076: internal: Simplify handling of try_tryflag. No functional change. | Daniel Shahaf | 2019-12-18 | 1 | -6/+3 |
| | | | | | try_tryflag isn't assigned anywhere, other than at initialization and by these lines, so we don't need to save and restore the value. | ||||
* | 45066: internal: Document forklevel, locallevel, and exit_pending. | Daniel Shahaf | 2019-12-18 | 3 | -2/+14 |
| | |||||
* | 45065: Make 'make -s' print nothing when it does nothing. | Daniel Shahaf | 2019-12-18 | 1 | -1/+0 |
| | |||||
* | 45064: Fix the mktemp() warning, in debug builds only. | Daniel Shahaf | 2019-12-18 | 1 | -0/+25 |
| | | | | | | | | | | | | On Linux, linking to mktemp() generates the following warning: . utils.o: In function `gettempname': ./Src/utils.c:2229: warning: the use of `mktemp' is dangerous, better use `mkstemp' or `mkdtemp' The warning cannot be disabled. Work around that by using mkstemp() instead, and massage its output so it behaves like mktemp(). See the new comment for further details. | ||||
* | 45058: internal: Add symbolic names to possible values of zexit()'s ↵ | Daniel Shahaf | 2019-12-17 | 8 | -25/+35 |
| | | | | "from_where" parameter. No functional change. | ||||
* | unposted: Update comment to reflect variable rename in 41012 (= ↵ | Daniel Shahaf | 2019-12-17 | 1 | -1/+1 |
| | | | | zsh-5.3.1-182-gd7110d8f0). | ||||
* | 45025: fix re-entrancy problem with memory management in readoutput(). | Peter Stephenson | 2019-12-15 | 1 | -25/+36 |
| | | | | This could cause a signal received during $(...) to corrupt memory. | ||||
* | 45009: POSIX_CD needs to suppress some forms of option. | Peter Stephenson | 2019-12-12 | 1 | -1/+1 |
| | | | | | Otherwise forms of argument allowed by POSIX are interpreted as options instead. | ||||
* | 45001: Fix zero-length matches with ${...%...} | Peter Stephenson | 2019-12-12 | 1 | -0/+6 |
| | | | | As the shortest match is preferred, zero-length matches beat any other. | ||||
* | 45004: Fix typos in comments | Martijn Dekker | 2019-12-11 | 20 | -47/+47 |
| | |||||
* | 44997: GLOB_COMPLETE fix for compctl file completion. | Peter Stephenson | 2019-12-10 | 1 | -1/+21 |
| | | | | Dashes could cause problems in directory prefixes. | ||||
* | 44976: fixup describe-key-briefly for visual mode | Oliver Kiddle | 2019-12-04 | 1 | -0/+4 |
| | |||||
* | unposted: zstyle: Add a unit test and some comments. | Daniel Shahaf | 2019-12-01 | 1 | -3/+16 |
| | |||||
* | users/24451: zgetcwd: Add a guard against returning an empty string. | Daniel Shahaf | 2019-11-19 | 1 | -1/+1 |
| | |||||
* | users/24445: Add :P modifier to history code. | Peter Stephenson | 2019-11-18 | 1 | -0/+10 |
| | | | | | This was in the glob qualifier and variable code but got missed out of the separate history modifier function. | ||||
* | 44864: Avoid inifinite loop in tty init. | Peter Stephenson | 2019-10-28 | 1 | -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. | ||||
* | unposted: fix indentation (whitespace-only change) | romkatv | 2019-10-28 | 1 | -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. | ||||
* | 44841: Better checking of errors from "nice" | _RuRo_ (Андрей Стоцкий) | 2019-10-16 | 1 | -2/+5 |
| | |||||
* | unposted: functions -c: Fix typo | Daniel Shahaf | 2019-10-10 | 1 | -1/+1 |
| | |||||
* | bug fix: infinite loop when tty disappears | romkatv | 2019-10-04 | 1 | -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. | ||||
* | 44714: Take account of CDABLE_VARS while checking spelling | Jun-ichi Takimoto | 2019-08-29 | 1 | -0/+2 |
| | |||||
* | 44710: support RLIMIT_UMTXP on FreeBSD | Jun-ichi Takimoto | 2019-08-28 | 2 | -0/+12 |
| | |||||
* | 44709: incluce sys/capability.h only if HAVE_CAP_GET_PROC is defined | Jun-ichi Takimoto | 2019-08-28 | 1 | -1/+1 |
| | |||||
* | 44664: Fix problem with temporary assignment. | Peter Stephenson | 2019-08-14 | 1 | -1/+3 |
| | | | | | "foo=bar builtin" inside a function lost any variable from enclosing scope. | ||||
* | Copy functions using functions -c old new. | Peter Stephenson | 2019-08-03 | 1 | -2/+41 |
| | | | | Documentation and test. | ||||
* | 44635: Don't apply STAT_NOPRINT to backgrounded jobs | Peter Stephenson | 2019-08-03 | 1 | -1/+2 |
| | |||||
* | 44637: = doesn't need quoting in awk regexp. | Shlomi Fish | 2019-08-03 | 1 | -1/+1 |
| | | | | Known to cause warnings in gawk 5. | ||||
* | 44582: Fix foregoing commit to use DPUTS() better | Kamil Dudka | 2019-07-26 | 1 | -6/+4 |
| | |||||
* | 44566: make sure Zle doesn't crash if history entry not found | Kamil Dudka | 2019-07-24 | 1 | -2/+12 |
| | |||||
* | 44509: Prevent crash with modified path / PATH combination. | Peter Stephenson | 2019-07-15 | 1 | -4/+12 |
| | | | | | | Crash came from "fn() { typeset -U path=($path); unset PATH; }". Note PATH unset is global as only path was made local. | ||||
* | 44502: Quote function name for "autoload -X" | Bart Schaefer | 2019-07-08 | 1 | -1/+1 |
| | |||||
* | 44480: Don't automatically close externally visible file descroptors. | Peter Stephenson | 2019-07-02 | 2 | -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. | ||||
* | 44469: correct error on missing option argument | Martijn Dekker | 2019-07-01 | 1 | -5/+12 |
| | |||||
* | 44446: Fix here document with file descriptor declarator. | Peter Stephenson | 2019-06-24 | 1 | -1/+2 |
| | | | | Add unit test. | ||||
* | 44443: POSIX allows exporting readonly variables | Martijn Dekker | 2019-06-23 | 1 | -1/+1 |
| | |||||
* | 44435: Handling digita arguments for :h and :t. | Peter Stephenson | 2019-06-20 | 4 | -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. | ||||
* | fix multiple bugs in countprompt | romkatv | 2019-06-19 | 1 | -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. | ||||
* | 44361: Initialise variables in pattern matching. | Peter Stephenson | 2019-05-28 | 1 | -10/+12 |
| | | | | | These are used recursively and it's a bit obscure if there are case where the value can leak. | ||||
* | fix cursor position with ZLE_RPROMPT_INDENT=0 | romkatv | 2019-05-28 | 1 | -20/+20 |
| | |||||
* | 44345: fix wordcode traversal where ! without a following command could ↵ | Oliver Kiddle | 2019-05-23 | 1 | -2/+7 |
| | | | | result in a crash | ||||
* | 44307: allow for atoi() returning a negative number | Oliver Kiddle | 2019-05-20 | 4 | -6/+9 |
| | |||||
* | 44284: combination of -T and -p to typeset crashed the shell. | Oliver Kiddle | 2019-05-14 | 1 | -4/+2 |
| | |||||
* | 44290: job number exceeding int range and wrapping to a negative number ↵ | Oliver Kiddle | 2019-05-14 | 1 | -1/+1 |
| | | | | crashed the shell | ||||
* | 44291: printf with argument specifier out of range for an int crashed the shell | Oliver Kiddle | 2019-05-14 | 1 | -2/+1 |
| | |||||
* | 44296: "typeset Q= {X}" crashed the shell. | Peter Stephenson | 2019-05-14 | 1 | -0/+8 |
| |