Daniel Shahaf
fd2ca229dd
40067: internal: Document 'cmatcher', parse_cmatcher(), 'comptoend', unsetparam_pm(), and getindex().
2016-12-03 09:54:11 +00:00
Barton E. Schaefer
a9fe87e18c
40032: consistency in handling of subscript slices outside the bounds of an array parameter
...
unposted: README: example describing 40032
2016-11-29 12:31:33 -08:00
Guillaume Maudoux
dae21874d4
39900: Add TERMINFO_DIRS special like TERMINFO.
...
Although this is a colon-separated array there is no tied array.
2016-11-20 20:24:15 +00:00
Peter Stephenson
368884a3aa
39995 (from 39977): Optimise string parameter assignment.
...
If setter is the standard one and string length is unchnaged we can
copy into place.
2016-11-20 19:41:52 +00:00
Daniel Shahaf
f35198d837
39992: setarrvalue: Allocate a correctly-sized array.
...
No memory was lost; the array was allocated with room for one (char *) element
more than was required.
2016-11-20 11:56:02 +00:00
Jun-ichi Takimoto
3fd50d06a1
39937: fix a problem introduced by 39886.
...
$a[i,j] should become an empty array if i>j.
2016-11-15 00:17:35 +09:00
Barton E. Schaefer
d676d1bf4b
39893: use arrdup_max() to show explicitly the difference in two code branches
...
no functional change
2016-11-10 21:01:32 -08:00
Daniel Shahaf
7139b73724
39874/0001: setarrvalue: Remove needless initialization.
2016-11-11 04:35:41 +00:00
Peter Stephenson
65ea1a033b
39887: no need to conditionalise assignment of strlen()
2016-11-09 13:45:11 +00:00
Peter Stephenson
a1633e09a7
39886 based on 39877: Optimise arrdup to arrdup_max.
...
Only duplicate as much of the array as is needed.
2016-11-09 11:54:57 +00:00
Sebastian Gniazdowski
49407686b4
39875: add dupstring_glen to avoid redundant strlen calls
2016-11-09 10:32:48 +00:00
Sebastian Gniazdowski
06e4ec853a
39871: cut down number of strlen()s in getstrvalue()
2016-11-08 15:14:08 +00:00
Sebastian Gniazdowski
68a576bc55
39869: can transfer ownership of core of array when assigning
2016-11-08 10:49:13 +00:00
Barton E. Schaefer
ab81b98c49
39758: revise 39704 for array and hash parameters; more POSIXBUITINS tweaks for
...
export
39704 was commit 0f5e670
, forgot to reference article number in that log.
"typeset -p" outputs "typeset" for array and hash parameters, even when
exported, because those types can be marked export but are never pushed
to the enviroment.
For POSIXBUILTINS, "export var" does not implicitly set $var, and its
export state is preserved when assigned (but not when explicitly unset).
2016-10-29 11:56:50 -07:00
Barton E. Schaefer
0f5e670cde
"typeset -p" uses "export" commands or the "-g" option for parameters that are not local to the current scope
2016-10-24 07:14:39 -07:00
Peter Stephenson
4ab3fcc90d
39545: Add some missing unqueue_signals().
...
All of these are added simply to fit existing logic in other branches.
2016-10-03 13:43:20 +01:00
Peter Stephenson
c942c7e8b6
39519: restore missing PM_EXPORT flags.
...
This was missing when exporting using USE_SET_UNSET_ENV coce variant.
2016-09-30 11:35:50 +01:00
Peter Stephenson
d08674ef8c
39498: use PRIVILEGED option to decide on problematic parameter imports
2016-09-30 10:41:44 +01:00
Bart Schaefer
d44d23c757
unposted: change '\0' to NULL to silence spurious compile warning.
...
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';
2016-09-28 10:58:46 -07:00
Peter Stephenson
b32d974000
39460: Don't import PS4 if running as root.
...
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.
2016-09-28 09:50:58 +01:00
Oliver Kiddle
fbafc5b509
39332: support ksh's [[ -v varname ]] condition for checking if variables are set
2016-09-16 00:00:28 +02:00
Daniel Shahaf
7154052ebe
39046 + 39061: New :P history modifier.
2016-08-22 03:34:30 +00:00
Daniel Shahaf
f9b1703511
38971: Start using the new arrlen_ge() / arrlen_le() helpers.
2016-08-01 08:01:29 +00:00
Daniel Shahaf
1a368bf31f
38973: Optimize indexing array parameters.
...
% () { 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
2016-08-01 08:01:28 +00:00
Peter Stephenson
d309d9addc
38692: IFS can't be changed in restricted mode
2016-06-21 12:32:27 +01:00
Barton E. Schaefer
3a6a6fda8a
unposted (cf. 38612): remove overeager DPUTS()
2016-06-04 22:21:29 -07:00
Greg Klanderman
440c6beec0
38086: shuffle init code to localize a global, add $ZSH_ARGZERO, refine $ZSH_SCRIPT
...
(also a couple of ChangeLog typos corrected -- Bart)
2016-03-06 09:53:40 -08:00
Stephane Chazelas
f7d5ff31ce
38020: fix problems with $SECONDS.
...
Fractions of a second were not handled correctly.
2016-02-26 11:12:32 +00:00
Barton E. Schaefer
b7b3ae311d
37988: $0 becomes read-only under POSIXARGZERO
2016-02-17 20:04:25 -08:00
Peter Stephenson
1ab316c9b8
37895: $ZSH_SCRIPT is POSIX $0 but always availble
2016-02-07 21:01:08 +00:00
Jun-ichi Takimoto
a4020e10a3
37868: add 'static' to file local variables
2016-02-03 01:25:33 +09:00
Barton E. Schaefer
10c5f95f52
37785: skip autoload parameters for "typeset -p"
2016-01-26 18:17:24 -08:00
Peter Stephenson
da71967273
37512: overeager WARN_CREATE_GLOBAL with strftime
2016-01-15 12:16:40 +00:00
Peter Stephenson
524f802610
37489, tweaked: with POSIX_IDENTIFIERS create math var as scalar
2016-01-03 18:57:10 +00:00
Peter Stephenson
16684952fb
37305: typeset -p can now output arrays on one line
2015-12-04 15:39:53 +00:00
Peter Stephenson
e40a14c5e4
37202: suppress WARN_CREATE_GLOBAL warnings after a fork
2015-12-04 10:44:33 +00:00
Daniel Shahaf
5ecf332e84
37253: Constify two local variables.
2015-12-03 23:53:03 +00:00
Daniel Shahaf
4202c90b6d
37254: No functional change: change code layout in preparation for 37253.
2015-11-30 03:42:46 +00:00
Daniel Shahaf
503fa5cd9e
37250: No functional change: rename local variables.
2015-11-30 03:42:45 +00:00
Barton E. Schaefer
9e06828a7f
37208: check for restricted parameter before changing from unset to set
...
Also, return NULL from setnparam() on failure to retrieve value (avoids
null-pointer dereference); add some expository comments
2015-11-23 21:48:49 -08:00
Peter Stephenson
58d040fd85
37203: WARN_CREATE_GLOBAL test in wrong place for associative array
2015-11-23 15:50:13 +00:00
Peter Stephenson
2737ae4a66
37168: No WARN_CREATE_GLOBAL on special parameters
2015-11-20 11:55:07 +00:00
Barton E. Schaefer
30b90f166e
37080: use paramtab abstraction more consistently, add explanatory comments
2015-11-08 12:44:31 -08:00
Daniel Shahaf
51d50218fb
unposted (after 37018): Fix typo in error message.
2015-10-30 15:03:12 +00:00
Peter Stephenson
de9effbce6
37018: Make WARNCREATEGLOBAL more consistent.
...
Wd don't need separate math handling any more, and can make it
output the function name in all cases.
2015-10-29 17:06:27 +00:00
Peter Stephenson
0628802baf
37014: Improved internal parameter setting.
...
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.
2015-10-29 15:01:07 +00:00
Peter Stephenson
83a175795a
36780: Fix crash in ksh mode with -n and $HOME.
...
If home variable is NULL ensure HOME is unset.
2015-10-06 09:28:07 +01:00
Mikael Magnusson
8e3ca08f13
36347: Fix appending empty array to associations
2015-09-01 23:20:05 +02:00
Barton E. Schaefer
a1f8d4ffc7
35826: add getsparam_u() to return unmetafied string, use it for a number of references to non-special params
2015-07-22 12:52:24 -07:00
Barton E. Schaefer
f3e8f4cf7a
35581, 35582: output array assignments with spaces inside the parens
2015-07-22 12:43:09 -07:00