1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-15 14:21:13 +02:00
Commit graph

906 commits

Author SHA1 Message Date
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
Peter Stephenson
641a764b82 users/22688: Allow mixing redirs and arguments after anon functions.
These are parsed differently from the case of normal functions which
can't take normal arguments at that point.
2017-05-08 17:19:22 +01:00
Peter Stephenson
f25d01a97c Fix combination of HERE document and |&.
A missing flag setting up the HERE document mean that the size
of the wordcode needed to append the 2>&1 was counted incorrectly,
so the resulting wordcode was garbled.

Add test.
2017-05-08 10:54:08 +01:00
Peter Stephenson
ed4e37e45c 41020: Fix "command -p"; "-p" was incorrectly left in command arguments
Also add tests for known precommand modifier issues.
2017-04-28 10:22:43 +01:00
Peter Stephenson
d7110d8f01 41012: Fix premature exit from nested function in EXIT trap.
Also add check so we don't delay an exit if we were already in
an EXIT trap for the main shell, as we should in that case leave
immediately.
2017-04-27 18:56:18 +01:00
Peter Stephenson
48b0daf3d4 41016: Test that quoted precommand modifiers now work 2017-04-27 09:58:45 +01:00
Peter Stephenson
408b92b168 41008: Handle expansions for precommand modifiers 2017-04-26 09:44:38 +01:00
Peter Stephenson
68466f327e 40995: Don't disable alias expansion when finding command substitution limits
This is needed in some unusual cases in order to identify the exit
condition without encountering a parse error.
2017-04-23 17:06:26 +01:00
Peter Stephenson
f6ab9a281d 40932: Parameter subscripts need to count parentheses.
Otherwise they can terminate in the middle of an expression.
2017-04-03 10:04:03 +01:00
Sebastian Gniazdowski
5aec3f9742 40909: Stress test for parameter substitution 2017-03-30 12:16:24 +01:00
Peter Stephenson
e78ec8610d 40891: fix more zero-length matches.
This time at the end of the trial string.
2017-03-23 21:01:59 +00:00
Peter Stephenson
086656241c 22601: Fix for parameter substitution pattern matches.
It was not possible to math against a zero-length string in
some cases.
2017-03-23 09:35:20 +00:00
Peter Stephenson
27a55d8591 Improve comment at top of GDBM test 2017-03-21 09:57:00 +00:00
Daniel Shahaf
d044530afd 40816: Document interaction of 'print -P' and 'print -f'. 2017-03-12 19:37:18 +00:00
Jun-ichi Takimoto
2ff71e84ba 40820: add a few tests of strftime, related to 40681 2017-03-12 21:04:22 +09:00
Peter Stephenson
018992123e 40803, 40804, 40805, 40806: Parameter test additions.
Potentially dodgy string for ${(z)...} splitting from Sebastian.

Check that $- and ${-} produce plausible results.
2017-03-09 12:18:54 +00:00
Sebastian Gniazdowski
6f25cbae04 40706: Fix ordering dependence in gdbm test 2017-03-07 10:55:20 +00:00
Peter Stephenson
f3f8537cfa 40760: Always tokenize unquoted - to Dash.
This fixes use of pattern match character ranges in unusual contexts.

Attempt to detect a tokenized - in cases where we don't care.
2017-03-07 10:43:58 +00:00
Sebastian Gniazdowski
8522e996ec 40781: optimize array assignment, similar to 39995 for string assignment 2017-03-04 15:35:19 -08:00
Peter Stephenson
efe5e6a2f0 40173: No error on failure to load zsh/db/gdbm in test.
This is a soft error causing the test to be skipped, with a report
to that effect.
2017-03-03 10:20:16 +00:00
Peter Stephenson
47c05f6b66 40622 with typos fixed: functions -Ms.
This adds the capability for mathematical functions based on shell
functions to have a string argument.  Module functions have had
this for a long time.
2017-03-01 10:01:01 +00:00
Sebastian Gniazdowski
24497ad196 40562: gdbm tests omitted from previous commit 2017-03-01 09:52:46 +00:00
Daniel Shahaf
c7048cd88f Revert 40626 which broke tests. 2017-02-26 06:11:19 +00:00
Daniel Shahaf
6c476c2211 40626: Make $options re-settable.
Follow-up to 40508.

Reported-by: James McGlashan
2017-02-25 08:05:11 +00:00
Barton E. Schaefer
79005f1b79 use "diff -a" in case special characters were written to the test output 2017-02-20 13:26:50 -08:00
Barton E. Schaefer
574933e5a0 40565 (tweaked): test cases for assigning array to scalar with various combinations of SHWORDSPLIT and IFS 2017-02-20 13:26:49 -08:00
Daniel Shahaf
e9267adb49 40508: Make $functions re-settable. 2017-02-08 05:06:49 +00:00
Daniel Shahaf
ad1b46578e 40460: WARN_NESTED_VAR: Don't warn when assigning to a slice of an existing array 2017-02-01 01:49:45 +00:00
Jun-ichi Takimoto
0e25f1cb4d 40470: make the test work also with ASCII collation
a few OSs (macOS and some versions of BSDs) use ASCII collation even if
UTF-8 locale is in use
2017-02-01 10:42:45 +09:00
Peter Stephenson
ed855baf48 40465: update methods to output $PWD in tests.
Use method from B01cd.tst which resolves symbolic links and
matches against parameter in output.
2017-01-30 10:31:11 +00:00
Peter Stephenson
34f70c5dc0 40440: Add $functions_source hash to zsh/parameter.
This allows you to find out where a function was loaded from.
2017-01-28 19:33:27 +00:00
Peter Stephenson
1633b2800d 40423: WARN_NESTED_VARS, conversion the other way 2017-01-26 20:07:51 +00:00
Peter Stephenson
80e47a9a5d 40422: More WARN_NESTED_VAR cases.
Converting type when using a calling scope was broken in the
original patch.
2017-01-26 19:58:17 +00:00