summary refs log tree commit diff
path: root/Src
Commit message (Collapse)AuthorAgeFilesLines
* 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
* 44271: Fix breaks propagated from until or return.Peter Stephenson2019-05-031-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.
* 44284: Mark SIGQUIT as ignore if ignored on entry to shell.Peter Stephenson2019-04-251-0/+9
| | | | | This prevents us from re-enabling it after a fork if it is being ignored.
* 44254: Handle error case in zgetdir().Peter Stephenson2019-04-251-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.
* 43288: fix line-broken promptsdana2019-04-181-3/+8
| | | | Without re-breaking the case where a newline character lands in column 0.
* 44198: Add cd_silent option to suppress all cd outputdana2019-04-123-2/+4
|
* 44168 (tweaked to remove change to errflag): Fix interrupt handling of zle -F.Peter Stephenson2019-04-101-1/+5
| | | | | If interrupted by irrelevant interrupt (EINTR only is set), don't set the local error flag, just retry.
* 44214: <(...) substitutions shouldn't grab the terminalEric Freese2019-04-101-1/+1
|
* 44215: Maintain LASTWIDGET across reset-prompt.Roman Perepelitsa2019-04-106-10/+18
| | | | This avoids side effects of asynchronous notifications.
* 44202: Rewrite to use memmove() for possibly overlapping copyPeter Stephenson2019-04-101-5/+3
|
* 44176: warn only if off_t is longer than longJun-ichi Takimoto2019-03-251-1/+2
|
* 44162 (tweaked): Avoid format-overflow warning in zftp.cWesley Schwengle2019-03-251-8/+2
|
* 44164: Avoid stringop-truncation warningWesley Schwengle2019-03-251-1/+1
|
* 44153: rm: Accept -R as equivalent to -rMatthew Martin2019-03-211-3/+4
|