busybox/shell/hush_test
Denys Vlasenko 035486c750 ash: significant overhaul of redirect saving logic
New code is similar to what hush is doing.
Make CLOSED to -1: same as dash.
popredir() loses "restore" parameter: same as dash.
COPYFD_RESTORE bit is no longer necessary.

This change fixes this interactive bug:

	$ ls -l /proc/$$/fd 10>&-
	ash: can't set tty process group: Bad file descriptor
	ash: can't set tty process group: Bad file descriptor
	[1]+  Done(2)                    ls -l /proc/${\$}/fd 10>&4294967295

function                                             old     new   delta
unwindredir                                           29      27      -2
tryexec                                              154     152      -2
evaltree                                             503     501      -2
evalcommand                                         1369    1367      -2
cmdloop                                              187     185      -2
redirect                                            1029    1018     -11
popredir                                             153     123     -30
need_to_remember                                      36       -     -36
is_hidden_fd                                          68       -     -68
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 0/7 up/down: 0/-155)           Total: -155 bytes
   text    data     bss     dec     hex filename
 914572     485    6848  921905   e1131 busybox_old
 914553     485    6848  921886   e111e busybox_unstripped

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-07-31 04:21:46 +02:00
..
hush-arith shell/math: deconvolute and explain ?: handling. Give better error message 2010-09-16 11:50:46 +02:00
hush-bugs hush: fix and_or_and_backgrounding.tests failure 2017-07-15 22:51:55 +02:00
hush-glob hush testsuite: add glob_dir.tests 2016-10-02 15:20:57 +02:00
hush-heredoc hush: fix handling of empty heredoc EOF marker 2017-07-29 20:43:26 +02:00
hush-invert hush testsuite: add many tests from ash testsuite 2016-10-02 17:39:31 +02:00
hush-leak hush: do not use ps -o in leak_argv1; do not hardcode path in negate 2009-08-12 14:21:30 +02:00
hush-misc shell: some additions to *sh-misc/* tests 2017-07-24 18:51:40 +02:00
hush-parsing shell: and_or_and_backgrounding.tests is no longer "UNFIXED BUG" 2017-07-15 22:54:46 +02:00
hush-psubst hush: fix handling of \" in quoted/unquoted cmd 2010-09-12 15:05:39 +02:00
hush-quoting hush: fix quoted_punct.tests failure 2017-07-05 23:12:15 +02:00
hush-read shell: optional support for read -t N.NNN, closes 10101 2017-07-20 16:09:31 +02:00
hush-redir ash: significant overhaul of redirect saving logic 2017-07-31 04:21:46 +02:00
hush-signals hush: add support for "set -e" 2017-07-14 13:36:48 +02:00
hush-standalone hush testsuite: add many tests from ash testsuite 2016-10-02 17:39:31 +02:00
hush-vars shell: remove ${#+} tests, it is not a valid construct 2017-07-26 00:30:02 +02:00
hush-z_slow hush: plug a memory leak 2010-01-12 06:47:39 +01:00
.gitignore hush_test: ignore generated files 2009-05-21 17:45:26 -04:00
run-all shell: syncronize ash_test/run-all and hush_test/run-all a bit 2017-07-06 17:59:25 +02:00