Oliver Kiddle
65b265f3c0
42624 (plus test): avoid freeing memory that's still needed
...
This was occurring in a multiple function definition where a
function name is duplicated.
2018-04-12 23:15:29 +02:00
Oliver Kiddle
25da576c29
42575: fix to not complete options in the argument to another option
2018-04-05 11:14:58 +02:00
Peter Stephenson
3517e4a9a5
42581(?): Fix ZLE inline history expansion.
...
Seen with magic-space.
If there's a parse error in command subtitution we need to complete
reading history to ensure the command line buffer is finished.
2018-04-04 18:33:00 +01:00
Martijn Dekker
fa0105f78c
42538: Temporarily set umask for here document.
...
Done while signals are queued.
2018-03-27 09:32:55 +01:00
Peter Stephenson
47aa60950c
42355: Fix use of backslashes on here doc input.
...
Handling of white space in particular was confusing and inconsistent
with other shells.
2018-02-12 10:06:45 +00:00
dana
1af28cbfd7
42164: fix digits in format escapes in completion listings
2018-01-04 17:16:18 +00:00
Peter Stephenson
5f6a52c06c
42156: new CHECK_RUNNING_JOBS option demanded by bash groupies
...
Also new job options.
Also suppress debug error if rows or columns are reported as zero as
this is normal without a physical terminal.
2017-12-22 20:21:23 +00:00
dana
932ed86483
dana: 42145: Fix additional completion cases with option arguments.
2017-12-20 09:07:28 +00:00
Daniel Shahaf
4b55c0f40c
42146: type -w += global aliases
...
Follow-up to 36403, which did the same for suffix aliases.
2017-12-20 05:43:42 +00:00
Jun-ichi Takimoto
5f33a93afb
42116: multibyte support for ZLE vi-mode word motion
2017-12-18 12:48:25 +09:00
Peter Stephenson
aab0f6d763
42123 (tweaked): take account of Dash in function names.
...
Needed when comparing word code function name with autoload request.
Add test.
2017-12-15 09:00:37 +00:00
dana
cb04ae40af
add millisecond and microsecond options to TIMEFMT variable
2017-12-14 15:36:46 +00:00
Peter Stephenson
97c74dcb0e
42110: Fix redirections between variable assignments at start of line
2017-12-12 09:13:41 +00:00
dana
2bc02b4f98
42065: new getopts tests
2017-12-01 09:51:17 +00:00
Daniel Shahaf
77a39b57bf
42031 + 42048: Make [[ -o invalidoption ]] a normal(ish) false value, rather than a syntax error.
2017-11-24 22:10:27 +00:00
Oliver Kiddle
1bfcff129d
41983: fix exclusion of long options with (-) on a normal argument
2017-11-04 00:57:48 +01:00
Barton E. Schaefer
dcd4f02845
41902: ${(z)...} continues parsing on unmatched quote when CSH_JUNKIE_QUOTES is set
...
Tests for 41902 and 41873
2017-10-17 20:29:47 -07:00
Peter Stephenson
b3fa5c528c
41877: Separate out SH_FILE_EXPANSION loop from parameter substitution.
...
Parameter substitution can add nodes that need to be rescanned by
it, but not by file expansion, so the two don't play well together.
2017-10-13 18:17:09 +01:00
Barton E. Schaefer
b84d69cf52
41828, 41830: skip SHFILEEXPANSION for new nodes added by stringsubst() in prefork()
2017-10-08 18:08:09 -07:00
Oliver Kiddle
12902206b7
41824: fix to not complete rest args from an _arguments set alongside the argument to and option in a separate set
2017-10-07 22:35:59 +02:00
Peter Stephenson
174e560a23
41787 (plus minor tweaks): use $FUNCSTACK for function nesting depth.
...
Initialised from existing configuration value.
2017-10-02 09:44:26 +01:00
Peter Stephenson
728f2adfc8
Add typeset -p1, like typeset -p with newlines
2017-10-01 17:53:56 +01:00
Peter Stephenson
7cb55668c2
41773: Array index assignment tests for KSH_ARRAYS
2017-09-28 10:59:38 +01:00
Oliver Kiddle
80a02c10aa
41772: fix bug in handling of long options with _arguments' -A option
2017-09-28 09:31:35 +02:00
Peter Stephenson
6230e82d44
41764 (test tweaked): allow [key]+=value when modifying arrays
2017-09-27 09:41:50 +01:00
Peter Stephenson
85b0dd7133
Updates for ksh array element syntax.
...
Move detection of key/value pairs down into prefork().
Detect normal array assignment and [key]=val array assignemnt
separately. Mark key / value pairs with Marker and pass up flag. Deal
with marked triads specially later on.
2017-09-24 17:33:07 +01:00
Peter Stephenson
ab7be4238c
More [key]=value tweaks
...
Some rephrasings.
Update typeset -p for associative arrays to use new syntax.
2017-09-14 21:43:37 +01:00
Peter Stephenson
54b3958440
First go at var=([key]=value) syntax.
...
Works for both normal and typeset case, also var+=...
Still to do: allow to be mixed with straight array assignment,
improve typeset -p, implement [key]+=value.
2017-09-13 20:54:00 +01:00
Peter Stephenson
2ef3dff65a
41668: New --emulate option on invocation.
...
This sets the shell emulation mode similarly to ARGV0=... which
doesn't work from other shells.
Note that this gives more comprehensive emulation than running
emulate within the shell.
2017-09-11 10:12:17 +01:00
Peter Stephenson
c9df6bc8d4
41662: exec -a arguments weren't sanitised
2017-09-10 18:02:52 +01:00
Peter Stephenson
e44600d9aa
41661: Need to remove tokens before using bufferwords() for (z)
2017-09-10 18:01:39 +01:00
Peter Stephenson
ea5b38935a
41641: Some math operations shouldn't be lvalues.
...
This includes pre- and post- increment and decrement. Simply
mark all values after operations as rvalues.
2017-09-05 13:15:30 +01:00
Peter Stephenson
ebcea98eca
Fix problem with ERR_RETURN.
...
It wasn't suppressed properly in the code following an if
in some circumstances, in particular in initialsation scripts
and also in a nested function where the caller had suppressed
it.
2017-08-31 16:54:19 +01:00
Peter Stephenson
7d1877da4e
41608 (plus tests): restore ERR_EXIT before function.
...
There was an exception to the usual ERR_EXIT pattern that causes
problems when executing a function in an else branch. It seems
the exception is no longer needed as the regression tests pass
without it.
2017-08-29 19:52:18 +01:00
Peter Stephenson
97d4bdbc7e
41590 modified as 41595: make ERR_RETURN more logical.
...
It now operates separately at each function depth.
To keep ERR_EXIT global, make the noerrexit variable usd bit flags.
Extend tests.
2017-08-24 19:46:20 +01:00
Peter Stephenson
74aff4106a
41542: Fix pcre logic for extracting matched parentheses.
...
When we went off the end of the array but measured the length
implicitly, we got lucky before. After 41308 we were looking up lengths
in stale memory.
Rename some variables, clean up the logic, be easier to understand.
Add tests.
2017-08-14 11:17:48 +01:00
Phil Pennock
b5f40f4156
41527 (tweaked for heap memory): fix [[ -<cond> ]] from modules
2017-08-11 15:02:06 +01:00
Peter Stephenson
cfd34c75ac
41504: make empty strings work in case patterns with no leading parenthesis
2017-08-09 19:57:47 +01:00
Peter Stephenson
a9b579a9d3
Revert "41499 (with one further tweak): POSIX_STRINGS behaviour."
...
This reverts commit 2eacbef919
.
Conflicts:
ChangeLog
2017-08-08 19:04:49 +01:00
Peter Stephenson
2eacbef919
41499 (with one further tweak): POSIX_STRINGS behaviour.
...
Ignore a terminating delimiter when splitting as separators
despite being called separators are terminators.
2017-08-07 18:47:43 +01:00
Peter Stephenson
039a34cca5
41485: test for previous fix
2017-08-03 21:50:18 +01:00
Peter Stephenson
d4b94b5e83
41464, 41466: With POSIX_BUILTINS, exec only executes sexternal commands.
...
Document the default behaviour and add a test.
2017-07-27 09:22:04 +01:00
Peter Stephenson
a3b3f00575
41420: "{.." wasn't check for brace expansion properly
2017-07-13 17:20:24 +01:00
Peter Stephenson
e8edd42f7f
22760: fix partial string length reports with NO_MULTIBYTE
2017-07-02 20:29:00 +01:00
Phil Pennock
825f84c77e
41308 (tweaked): behaviour of PCRE with NUL bytes
2017-06-22 09:24:33 +01:00
Peter Stephenson
eb783754bd
41284: Fix NULL dereference in cd.
...
This happened in sh compatiblity mode if HOME was not set
and cd was used with no argument.
2017-06-13 15:41:00 +01:00
Peter Stephenson
1caaa933b4
unposted: Adding comments to test changed line number in output
2017-05-09 21:02:34 +01:00
Peter Stephenson
c7a9cf465d
40181: Fix buffer overrun in xsymlinks.
...
There was no check for copying to the internal xbuf2 for a
preliminary test.
2017-05-09 17:49:18 +01:00
Peter Stephenson
263a0c2476
41078: Empty psvar could cause bad dereference in prompt expansion
2017-05-09 09:46:23 +01:00
Peter Stephenson
af1c82d646
40173: Off-by-one error checking for {varid}.
...
This caused a single unprintable character in braces before a
redirection to be treated as an indentifier.
2017-05-08 18:00:55 +01:00