summary refs log tree commit diff
path: root/Src/params.c
Commit message (Collapse)AuthorAgeFilesLines
* unposted: change '\0' to NULL to silence spurious compile warning.Bart Schaefer2016-09-281-1/+1
| | | | | | params.c:830:13: warning: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Wnon-literal-null-conversion] *envp = '\0';
* 39460: Don't import PS4 if running as root.Peter Stephenson2016-09-281-3/+30
| | | | | There was an exploit in bash using SHELLOPTS to turn on xtrace, however this can't happen in zsh, so this is simply a precaution.
* 39332: support ksh's [[ -v varname ]] condition for checking if variables ↵Oliver Kiddle2016-09-161-0/+30
| | | | are set
* 39046 + 39061: New :P history modifier.Daniel Shahaf2016-08-221-1/+1
|
* 38971: Start using the new arrlen_ge() / arrlen_le() helpers.Daniel Shahaf2016-08-011-2/+2
|
* 38973: Optimize indexing array parameters.Daniel Shahaf2016-08-011-1/+1
| | | | | | | | | | | % () { for 1 in $prefix/zsh/bin/zsh Src/zsh; do $1 -f -c 'a=( {1..1000000} ); repeat 3 time ( repeat 300 : $a[1] )'; done } ( repeat 300; do; : $a[1]; done; ) 1.68s user 0.01s system 98% cpu 1.718 total ( repeat 300; do; : $a[1]; done; ) 1.69s user 0.01s system 99% cpu 1.710 total ( repeat 300; do; : $a[1]; done; ) 1.69s user 0.01s system 99% cpu 1.714 total ( repeat 300; do; : $a[1]; done; ) 0.00s user 0.01s system 72% cpu 0.022 total ( repeat 300; do; : $a[1]; done; ) 0.00s user 0.01s system 72% cpu 0.022 total ( repeat 300; do; : $a[1]; done; ) 0.01s user 0.01s system 69% cpu 0.023 total
* 38692: IFS can't be changed in restricted modePeter Stephenson2016-06-211-1/+1
|
* unposted (cf. 38612): remove overeager DPUTS()Barton E. Schaefer2016-06-041-1/+0
|
* 38086: shuffle init code to localize a global, add $ZSH_ARGZERO, refine ↵Greg Klanderman2016-03-061-4/+2
| | | | | | $ZSH_SCRIPT (also a couple of ChangeLog typos corrected -- Bart)
* 38020: fix problems with $SECONDS.Stephane Chazelas2016-02-261-3/+3
| | | | Fractions of a second were not handled correctly.
* 37988: $0 becomes read-only under POSIXARGZEROBarton E. Schaefer2016-02-171-1/+3
|
* 37895: $ZSH_SCRIPT is POSIX $0 but always availblePeter Stephenson2016-02-071-0/+1
|
* 37868: add 'static' to file local variablesJun-ichi Takimoto2016-02-031-1/+1
|
* 37785: skip autoload parameters for "typeset -p"Barton E. Schaefer2016-01-261-1/+2
|
* 37512: overeager WARN_CREATE_GLOBAL with strftimePeter Stephenson2016-01-151-14/+2
|
* 37489, tweaked: with POSIX_IDENTIFIERS create math var as scalarPeter Stephenson2016-01-031-0/+1
|
* 37305: typeset -p can now output arrays on one linePeter Stephenson2015-12-041-26/+0
|
* 37202: suppress WARN_CREATE_GLOBAL warnings after a forkPeter Stephenson2015-12-041-5/+6
|
* 37253: Constify two local variables.Daniel Shahaf2015-12-031-4/+6
|
* 37254: No functional change: change code layout in preparation for 37253.Daniel Shahaf2015-11-301-6/+6
|
* 37250: No functional change: rename local variables.Daniel Shahaf2015-11-301-10/+13
|
* 37208: check for restricted parameter before changing from unset to setBarton E. Schaefer2015-11-231-8/+22
| | | | | Also, return NULL from setnparam() on failure to retrieve value (avoids null-pointer dereference); add some expository comments
* 37203: WARN_CREATE_GLOBAL test in wrong place for associative arrayPeter Stephenson2015-11-231-2/+4
|
* 37168: No WARN_CREATE_GLOBAL on special parametersPeter Stephenson2015-11-201-1/+1
|
* 37080: use paramtab abstraction more consistently, add explanatory commentsBarton E. Schaefer2015-11-081-2/+4
|
* unposted (after 37018): Fix typo in error message.Daniel Shahaf2015-10-301-1/+1
|
* 37018: Make WARNCREATEGLOBAL more consistent.Peter Stephenson2015-10-291-13/+39
| | | | | Wd don't need separate math handling any more, and can make it output the function name in all cases.
* 37014: Improved internal parameter setting.Peter Stephenson2015-10-291-2/+51
| | | | | | | | Enhance WARNCREATEGLOBAL to work in many more cases. Don't create REPLY as an integer if it didn't previously exist as one, even if the value to be set is integral, as this is likely to mess up later uses of REPLY.
* 36780: Fix crash in ksh mode with -n and $HOME.Peter Stephenson2015-10-061-6/+7
| | | | If home variable is NULL ensure HOME is unset.
* 36347: Fix appending empty array to associationsMikael Magnusson2015-09-011-3/+6
|
* 35826: add getsparam_u() to return unmetafied string, use it for a number of ↵Barton E. Schaefer2015-07-221-7/+16
| | | | references to non-special params
* 35581, 35582: output array assignments with spaces inside the parensBarton E. Schaefer2015-07-221-3/+9
|
* 35799: with NO_EXEC, parse parameter subscript expressionsBarton E. Schaefer2015-07-151-7/+15
|
* 35476: Allow setting $0 when POSIX_ARGZERO is not setMikael Magnusson2015-06-171-1/+16
|
* 35231: make mkevnstr() safe for NULL valueBarton E. Schaefer2015-05-201-5/+9
|
* 35059: fix, document, test readonly -p.Peter Stephenson2015-05-081-70/+108
| | | | | | Don't output specials as can't be reconstructed. Output arrays in a useful order.
* 35054: readonly -p + POSIXBUILTINS fix.Peter Stephenson2015-05-071-2/+13
| | | | Now displays unset variables marekd readonly
* 34992: POSIX fix for readonly variables.Peter Stephenson2015-04-291-1/+5
| | | | | With POSIXBUILTINS, variables can be marked readonly if unset. Also, variables can't have the readonly flag removed.
* 34430: parameter fixes for gdbm tied hash.Peter Stephenson2015-01-291-2/+25
| | | | | | | | Probably fix the issue with correct parameter hiding or not hiding. A little extra safety checking. Possibly fixed a memory leak with untying.
* 34322: bug with interface to parsestr() etc.Peter Stephenson2015-01-181-1/+2
| | | | | | | Was showing up in places like ${(e)...} where command substitution could reallocate the token string, but actually there was never any guarantee that the lexer wouldn't do that, so this was always a bit iffy.
* 34015: disallow strange environment variable names.Peter Stephenson2014-12-191-16/+23
| | | | | These are ones with the top bit set in any character. Don't import them, and don't export them.
* 34008: metafy the environment on arrival in the shellPeter Stephenson2014-12-181-1/+1
|
* 34006: unmetafy anything put into the environmentPeter Stephenson2014-12-181-1/+11
|
* 33876: etc.: Separate errors and keyboards interruptsPeter Stephenson2014-12-111-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Combination of 12 commits from interrupt_abort branch. Basic strategy is to introduce bits to errflag and to set and reset them separately. Remove interrupt status on return to main keymap. Turn off ERRFLAG_INT for always block. Restore bit thereafter: we probably need a new variable in order to allow user interrupts to be reset in the always block. Add TRY_BLOCK_INTERRUPT This works the same as TRY_BLOCK_ERROR, but for a SIGINT, too. Ensure propagation of SIGINT from exited job. If received by foreground job, shell uses ERRFLAG_INT, not ERRFLAG_ERROR, to set the new state. Reset errflag before precmd() Add always block in _main_completion to fix ZLS_COLORS Ensures we get the right state of $ZLS_COLORS at the end of _main_complete even if there's an interrupt. However, the "right state" is a bit messy as it depends on styles.
* 33276: safer import of numerical variables from environmentPeter Stephenson2014-09-291-8/+31
|
* 32634: add POSIX_ARGZERO optionBarton E. Schaefer2014-06-011-1/+15
|
* unposted: use DIGBUFSIZE for pipestatus numeric bufferPeter Stephenson2014-05-291-1/+1
|
* 32337: change initialization of some special parameters for emulation ↵Barton E. Schaefer2014-02-021-8/+9
| | | | compatibility
* 32299: add use of underscores on arithmetic output for spacingPeter Stephenson2014-01-231-4/+147
|
* 32208: always reset pathchecked when the path array is modifiedBarton E. Schaefer2013-12-301-2/+6
|