Denys Vlasenko
9a95df9046
ash: expand: Fix bugs with words connected to the right of $@
...
Upstream email:
This is actually composed of two bugs. First of all our tracking
of quotemark is wrong so anything after "$@" becomes quoted. Once
we fix that then the problem is that the first space character
after "$@" is not recognised as an IFS.
This patch fixes both.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-02 14:27:50 +02:00
Denys Vlasenko
1e5111b0f8
ash,hush: handle a few more bkslash-newline cases
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-01 03:04:55 +02:00
Denys Vlasenko
25f3b737dc
hush: fix comment parsing in cmd
, closes 10421
...
function old new delta
parse_stream 2692 2690 -2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-10-22 15:55:48 +02:00
Denys Vlasenko
39701204cf
hush: do not accept "if() { echo; }" function def
...
function old new delta
parse_stream 2634 2692 +58
msg_and_die_if_script - 21 +21
syntax_error_unexpected_ch 41 46 +5
syntax_error_at 14 18 +4
die_if_script 31 28 -3
setup_redirects 319 308 -11
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 3/2 up/down: 88/-14) Total: 74 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-08-02 19:46:14 +02:00
Denys Vlasenko
9f904a22ff
shell: and_or_and_backgrounding.tests is no longer "UNFIXED BUG"
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-07-15 22:54:46 +02:00
Denys Vlasenko
ee553b929c
hush: fix and_or_and_backgrounding.tests failure
...
function old new delta
done_pipe 133 218 +85
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-07-15 22:51:55 +02:00
Denys Vlasenko
c4cf542c57
sh testsuite: create hush-redir/* and move files around
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2016-10-02 17:55:51 +02:00
Denys Vlasenko
6e42b89b8d
hush: fix remaining known two bugs with IFS expansion. Closes 4027.
...
function old new delta
expand_vars_to_list 1054 1140 +86
parse_stream 2425 2479 +54
expand_on_ifs 258 310 +52
builtin_umask 133 132 -1
done_word 820 779 -41
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/2 up/down: 192/-42) Total: 150 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-08-01 18:16:43 +02:00
Denys Vlasenko
7b4c0fd5f4
hush: fix improper handling of newline and hash chars in few corner cases
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-11-22 17:58:14 +01:00
Denys Vlasenko
3227d3f982
hush: fix hush-bugs/parse_err.tests
...
function old new delta
parse_stream 2325 2339 +14
builtin_umask 121 123 +2
builtin_type 116 114 -2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-05-17 09:49:47 +02:00
Denys Vlasenko
f3e2818895
hush: improve HUSH_BRACE_EXP code (still disabled). ~0 bytes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-17 03:35:31 +01:00
Denys Vlasenko
d8389ad760
hush: fix handling of words with braces. +65 bytes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-11-16 03:18:46 +01:00
Denys Vlasenko
09516066d4
hush: do not use ps -o in leak_argv1; do not hardcode path in negate
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-08-12 14:21:30 +02:00
Denys Vlasenko
e640cb4ad1
hush: fix bug 353 (wrong handling of \x in assignments)
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-05-28 16:49:11 +02:00
Denys Vlasenko
e19e1935a3
hush: fix \<newline> handling
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-05-03 02:15:18 +02:00
Denis Vlasenko
bf25fbccb9
hush: fix handling of } which is not a closing one in { cmd; }
...
function old new delta
parse_stream 2176 2302 +126
builtin_unset 381 387 +6
2009-04-19 13:57:51 +00:00
Denis Vlasenko
bb929517a8
hush: fix "if { echo foo; } then { echo bar; } fi" parsing
...
function old new delta
done_word 728 793 +65
parse_stream 2084 2098 +14
2009-04-16 10:59:40 +00:00
Mike Frysinger
327fd47f36
skip some tests when fancy echo support is turned off
2009-04-09 07:50:18 +00:00
Mike Frysinger
c3d91952d6
we arent testing echo -n
here so use printf instead
2009-04-09 07:50:02 +00:00
Denis Vlasenko
715f712d15
move hush-parsing/and-or.tests to hush-misc/*
...
(which probably needs to be renamed to hush-execution...)
2009-04-06 16:17:51 +00:00
Mike Frysinger
3a64833eb9
add some brute force logic tests
2009-04-06 14:22:54 +00:00
Denis Vlasenko
feecc7b74e
hush: tweak testsuite
2009-03-20 12:12:33 +00:00
Denis Vlasenko
a8b6dff97f
hush: fix bug 207 and "hush -c" parameter passing.
...
Now hush -c 'printf "%s\n" "$@"' (prints "\n")
and hush -c 'printf "%s\n" "$@"' qwe asd (prints "asd\n")
both work correctly
2009-03-20 12:05:14 +00:00
Denis Vlasenko
afdcd12ed7
hush: fix a case where "$@" must expand to no word at all
2008-07-05 17:40:04 +00:00
Denis Vlasenko
ab876cd107
hush: add testsuite for "no globbing in redirection" rule.
...
simplify redirection habdling
2008-06-18 16:29:32 +00:00
Denis Vlasenko
985de15bf3
hush: expand quote3.tests and move from hush-bugs to hush-parsing
2008-06-18 09:22:31 +00:00
Denis Vlasenko
a84420062a
hush: support "! cmd | cmd" negation
...
function old new delta
done_word 749 791 +42
run_list 1821 1859 +38
checkjobs 334 351 +17
done_pipe 61 74 +13
static.reserved_list 132 144 +12
initialize_context 53 45 -8
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/1 up/down: 122/-8) Total: 114 bytes
2008-06-14 11:00:17 +00:00
Denis Vlasenko
43360e5178
hush: fix escaping of \[*?; add testsuites for these and for globbing
2008-06-10 20:13:40 +00:00
Denis Vlasenko
90e485ce79
hush: make syntax error messages a bit more useful
2007-05-23 15:22:50 +00:00
Denis Vlasenko
1a7358612f
hush: fix a bit different instance of "No EOL" bug,
...
add testsuite for that. Expand another testsuite.
2007-05-23 00:32:25 +00:00
Denis Vlasenko
8805eeb44a
shells: update README and testsuite. environment memory leak
...
needs to be fixed - and documented!
2007-05-21 10:19:48 +00:00
Denis Vlasenko
1f4cf517f5
hush: fix expansion of quoted $VAR, $* and $@
2007-05-16 10:39:24 +00:00
Denis Vlasenko
8f6bdb42df
hush: fix incorrect processing of echo "'$var'".
...
hush: rename map[] and MAP_xxx, making them easier to understand.
hush: move testcase (which now passes) from hush-bugs to hush-parsing
2007-05-16 09:36:55 +00:00
Denis Vlasenko
d6050949b8
hush: move testsuite files from hush-bugs to hush-parsing
...
(as these bugs are now fixed)
2007-05-14 22:09:52 +00:00
Denis Vlasenko
119b995437
hush: reinstate hush_test, add testcases for process subst
2007-05-11 12:57:35 +00:00
Denis Vlasenko
3e9aaae5dc
hush: fix bug in interactive shell introduced yesterday
...
hush: fix `process subst` (2 bugs)
NB: will delete and re-add hush_test in order to change file modes
2007-05-11 12:56:43 +00:00
Denis Vlasenko
e0a336747c
hush: fix "unterminated last line loops forever" bug
...
hush: add testsuite infrastructure
2007-05-10 23:06:55 +00:00