about summary refs log tree commit diff
path: root/Src
Commit message (Collapse)AuthorAgeFilesLines
* 51945: assorted documentation improvements, bug fixes, and new testBart Schaefer2023-07-262-13/+42
| | | | | | | | | | | | | | 1) Document the behavior of "typeset -n existing_var" (via Jun T. comment) 2) Prohibit "typeset -nm pattern" because, well, it's insane. Add test. 3) Improve doc for ${(!)ref} including ${{t!)ref} (Jun T.) 4) Fix doc for how-to unset of a named ref (Jun T.) 5) Allow "typeset +r -n ref" and "typeset +r +n ref" (Jun T.) 6) Fix "typeset -r -n ref=param" to create readonly references 7) Avoid accidental removal of PM_UNSET flag (Jun T.) and update test 8) Fix "typeset -gn ref=value" and add a test for it 9) Add tests for read-only reference behavior 10) Fix infinite recursion when resolving scope of an unset local named reference, add test.
* 51969: read -d and -s should not reset terminal state when stdin is redirectedBart Schaefer2023-07-261-3/+3
|
* 51950 (tweak per 51949): correct Thingy refcount in raw_getbyte()Bart Schaefer2023-07-261-1/+2
|
* 51977: PIPEFAIL interaction with ERREXIT / ERRRETURNPeter Stephenson2023-07-201-5/+11
| | | | | | Ensure the list-level error handling code is executed if we detect pipe failure for a foreground job. Add tests.
* 51890: fix "whence -wa" for multiple argumentsBart Schaefer2023-07-091-0/+1
|
* 51889: fix module loading problem with full RELROJun-ichi Takimoto2023-06-262-1/+25
| | | | | | | | If full RELRO (relocation read-only, one of the security enhancement methods for ELF-based systems) is used when building zsh (as in binary packages of most Linuxes), loading a module (e.g. zsh/zftp) fails unless all the modules it depends on are already loaded. With this patch the necessary modules are automatically loaded.
* 51884: reset IFS if it contains invalid charactersJun-ichi Takimoto2023-06-262-16/+29
| | | | This happens only if MULTIBYTE option is on.
* 51887: namespaces recognized in math, incorrect usages rejected.Bart Schaefer2023-06-222-4/+33
|
* 51877: do not build pcre module if pcre2-config is not foundJun-ichi Takimoto2023-06-201-1/+1
|
* 51826: correctly read metafied null character from history fileJun-ichi Takimoto2023-06-081-2/+8
|
* 51816: add :S history modifier with pattern matchPeter Stephenson2023-06-062-8/+21
|
* 51739: detect invalid history word beginningPeter Stephenson2023-05-251-1/+6
|
* 51769: fix compilation when HAVE_GETRUSAGE is not definedOliver Kiddle2023-05-212-1/+3
| | | | Also silence compiler warning when HAVE_SETUPTERM is not defined.
* 51722: Safety for extracting elements of $historywordsPeter Stephenson2023-05-131-2/+9
|
* 51738: support pcre's alternative DFA matching algorithmOliver Kiddle2023-05-131-17/+36
|
* 51728: assign pcre named capture groups to a hashOliver Kiddle2023-05-131-10/+33
|
* 51723: migrate pcre module to pcre2Oliver Kiddle2023-05-131-136/+87
|
* users/29070: clean up tokens in cmdstr before compctl completionBart Schaefer2023-05-111-0/+2
|
* 51670: prevent possible underflow in gettext()Bart Schaefer2023-04-221-1/+1
|
* 51652: fix running of TRAPEXIT explicitly.Peter Stephenson2023-04-171-1/+33
| | | | | | This is a special case where TRAPEXIT is unset within a TRAPEXIT as it should never run in a nested context, so just save the function structure temporarily on the heap.
* 51639: new parameter ZSH_EXEPATH (full path of zsh executable)Jun-ichi Takimoto2023-04-111-1/+116
| | | | | | The full pathname is obatined by a reliable method on macOS and systems that support procfs. But on other systems (FreeBSD, OpenBSD, ...) it is guessed from argv[0], PWD and PATH.
* 51631: initialize $_ by copying it from environmentJun-ichi Takimoto2023-04-091-3/+6
|
* 51632: nmetafy $_ when exporting it to childJun-ichi Takimoto2023-04-091-1/+1
|
* 51597: fix 'vared -c var' when var is unsetJun-ichi Takimoto2023-04-031-1/+2
|
* 51604: %M in TIMEFMT should report in kilobytesJun-ichi Takimoto2023-03-301-7/+7
|
* 51608: Don't execute commands after "continue &&"Peter Stephenson2023-03-291-2/+2
| | | | Also ! continue ||
* 51602: Handle SIGIOT as an alias to SIGABRT if they are the same signal numberMikael Magnusson2023-03-282-4/+10
|
* 58586: print "%s" with invalid multibyte characterPeter Stephenson2023-03-221-13/+14
| | | | Treat each byte that is invalid or part of an incopmlete set as a single byte.
* 51573: additional "typset -p -m" fix for namespacesBart Schaefer2023-03-141-3/+5
| | | | | | | | The "-m pattern" option is supposed to enable printing namespaces, but that didn't work when combined with -p. The -p option could also cause an unset parameter to become set if a named reference pointed at it.
* 51557: Clarify availability of ksh-mode parameters, improve vi-mode detection.Bart Schaefer2023-03-111-2/+3
|
* 51510: Skip namespaces in "set"/"typeset" output, add tests, fix bugBart Schaefer2023-03-064-8/+19
|
* 51509 (+ fix typo): Add ${(!)name} for the referred-to name of a named referenceBart Schaefer2023-03-063-9/+37
| | | | Extend ${!name} in ksh emulation for same
* 51524: dependency on zsh/zle for linkageBart Schaefer2023-03-061-0/+2
|
* 51485: module for several ksh93 features, mostly enabled only in ksh emulation.Bart Schaefer2023-03-053-1/+274
|
* 51484: Extend named reference handling for special parameters, improve doc.Bart Schaefer2023-03-051-44/+64
|
* 51483: Enable assignment and expansion of parameters with ksh-like namespace ↵Bart Schaefer2023-03-058-19/+40
| | | | prefixes.
* unposted: fix memory leak flagged by coverityBart Schaefer2023-03-051-0/+1
|
* 51491: Check should use zlemetacs instead of zlecsMikael Magnusson2023-02-281-1/+1
| | | | | | Coverity noticed that this first branch of the if statement has "meta" added to all the variable names except this zlecs at the end, so change it to match.
* 51460: avoid crash on bad parameter autofeatureBart Schaefer2023-02-261-6/+11
|
* Fix access to autoloaded parameter.Peter Stephenson2023-02-211-1/+1
| | | | Namerefef resolution needs to happen on the parameter after autoload.
* 51431: "typeset -p" shouldn't change parameter flagsBart Schaefer2023-02-201-13/+33
|
* 51447: silence compiler maybe-uninitialized warning by combining a couple of ↵Oliver Kiddle2023-02-171-12/+13
| | | | variables
* 51437: Fix incorrectly-passed test case, masked by unrelated bug.Bart Schaefer2023-02-141-2/+3
| | | | | | A bug with zmodload when unloading/reloading a static module caused the state of the shell options to change during K01 test. Worked around it. Also changed warnnestedvar messages to look more like other such.
* 51424: $(<...) shouldn't try to open a file with NO_EXECPeter Stephenson2023-02-141-0/+3
|
* 51430: Misc. problems with typeset and $parametersBart Schaefer2023-02-133-8/+12
| | | | | | * Fix and test for regression of assignment when using typeset command * Fix output of typeset +m and $parameters[ref] * Prevent segfault in typeset
* 51417: Check subscripts in named reference values more rigorously.Bart Schaefer2023-02-121-1/+10
|
* 51402: Some ksh/bash features, additional sanity checkingBart Schaefer2023-02-124-27/+124
| | | | | | | | | | | | * Add "unset -n" * Allow and enforce "typeset -n -r" for read-only references * "can't change type via subscript reference" error * Better checking for self-referential declarations/assignments * Ksh-style "foo=bar; typeset -n foo" creates foo=bar reference * Support "typeset -n ref; for ref in ..." * Subscripted references use NO_EXEC for safety * References assigned in called scopes reset scope at end * Allow named references to $! $? $$ $- $0 $_
* 51374: Expose named references in $parameters, fix substitution error.Bart Schaefer2023-02-122-5/+16
|
* 51360: Initial implementation of named references.Bart Schaefer2023-02-126-16/+262
|
* 51404: Nullify filelist after deleting (fix segfault)Bart Schaefer2023-02-121-2/+6
|