summary refs log tree commit diff
path: root/Src
Commit message (Collapse)AuthorAgeFilesLines
* 45083: Add signal protection to execarith().Peter Stephenson2019-12-181-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 Shahaf2019-12-181-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 Shahaf2019-12-183-2/+14
|
* 45065: Make 'make -s' print nothing when it does nothing.Daniel Shahaf2019-12-181-1/+0
|
* 45064: Fix the mktemp() warning, in debug builds only.Daniel Shahaf2019-12-181-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 Shahaf2019-12-178-25/+35
| | | | "from_where" parameter. No functional change.
* unposted: Update comment to reflect variable rename in 41012 (= ↵Daniel Shahaf2019-12-171-1/+1
| | | | zsh-5.3.1-182-gd7110d8f0).
* 45025: fix re-entrancy problem with memory management in readoutput().Peter Stephenson2019-12-151-25/+36
| | | | This could cause a signal received during $(...) to corrupt memory.
* 45009: POSIX_CD needs to suppress some forms of option.Peter Stephenson2019-12-121-1/+1
| | | | | Otherwise forms of argument allowed by POSIX are interpreted as options instead.
* 45001: Fix zero-length matches with ${...%...}Peter Stephenson2019-12-121-0/+6
| | | | As the shortest match is preferred, zero-length matches beat any other.
* 45004: Fix typos in commentsMartijn Dekker2019-12-1120-47/+47
|
* 44997: GLOB_COMPLETE fix for compctl file completion.Peter Stephenson2019-12-101-1/+21
| | | | Dashes could cause problems in directory prefixes.
* 44976: fixup describe-key-briefly for visual modeOliver Kiddle2019-12-041-0/+4
|
* unposted: zstyle: Add a unit test and some comments.Daniel Shahaf2019-12-011-3/+16
|
* users/24451: zgetcwd: Add a guard against returning an empty string.Daniel Shahaf2019-11-191-1/+1
|
* users/24445: Add :P modifier to history code.Peter Stephenson2019-11-181-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 Stephenson2019-10-281-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)romkatv2019-10-281-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-161-2/+5
|
* unposted: functions -c: Fix typoDaniel Shahaf2019-10-101-1/+1
|
* bug fix: infinite loop when tty disappearsromkatv2019-10-041-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 spellingJun-ichi Takimoto2019-08-291-0/+2
|
* 44710: support RLIMIT_UMTXP on FreeBSDJun-ichi Takimoto2019-08-282-0/+12
|
* 44709: incluce sys/capability.h only if HAVE_CAP_GET_PROC is definedJun-ichi Takimoto2019-08-281-1/+1
|
* 44664: Fix problem with temporary assignment.Peter Stephenson2019-08-141-1/+3
| | | | | "foo=bar builtin" inside a function lost any variable from enclosing scope.
* Copy functions using functions -c old new.Peter Stephenson2019-08-031-2/+41
| | | | Documentation and test.
* 44635: Don't apply STAT_NOPRINT to backgrounded jobsPeter Stephenson2019-08-031-1/+2
|
* 44637: = doesn't need quoting in awk regexp.Shlomi Fish2019-08-031-1/+1
| | | | Known to cause warnings in gawk 5.
* 44582: Fix foregoing commit to use DPUTS() betterKamil Dudka2019-07-261-6/+4
|
* 44566: make sure Zle doesn't crash if history entry not foundKamil Dudka2019-07-241-2/+12
|
* 44509: Prevent crash with modified path / PATH combination.Peter Stephenson2019-07-151-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 Schaefer2019-07-081-1/+1
|
* 44480: Don't automatically close externally visible file descroptors.Peter Stephenson2019-07-022-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 argumentMartijn Dekker2019-07-011-5/+12
|
* 44446: Fix here document with file descriptor declarator.Peter Stephenson2019-06-241-1/+2
| | | | Add unit test.
* 44443: POSIX allows exporting readonly variablesMartijn Dekker2019-06-231-1/+1
|
* 44435: Handling digita arguments for :h and :t.Peter Stephenson2019-06-204-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 countpromptromkatv2019-06-191-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 Stephenson2019-05-281-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=0romkatv2019-05-281-20/+20
|
* 44345: fix wordcode traversal where ! without a following command could ↵Oliver Kiddle2019-05-231-2/+7
| | | | result in a crash
* 44307: allow for atoi() returning a negative numberOliver Kiddle2019-05-204-6/+9
|
* 44284: combination of -T and -p to typeset crashed the shell.Oliver Kiddle2019-05-141-4/+2
|
* 44290: job number exceeding int range and wrapping to a negative number ↵Oliver Kiddle2019-05-141-1/+1
| | | | crashed the shell
* 44291: printf with argument specifier out of range for an int crashed the shellOliver Kiddle2019-05-141-2/+1
|
* 44296: "typeset Q= {X}" crashed the shell.Peter Stephenson2019-05-141-0/+8
|
* 44259: Ensure we can set signals to default even if ignored.Peter Stephenson2019-05-131-4/+0
| | | | | | Previously the shell didn't take account of signals marked as ignored on entry, which was inconsistent with other behaviour.
* 44275: Fix compset -p/-s multibyte inconsistency and documentationdana2019-05-081-1/+1
|
* 44274: allow finer control of completion match soring with compadd's -o optionOliver Kiddle2019-05-073-27/+90
|
* 44267: sort: Restore option to ignore backslashesdana2019-05-031-1/+24
| | | | Fix regression introduced by workers/41242