Denis Vlasenko
dadfb4975b
hush: add #defines to switch off break/continue if loops are not supported
...
*: remove a few inline keywords
no code changes
2008-07-29 10:16:05 +00:00
Denis Vlasenko
918a34b9e0
hush: fix "while false; ..." exitcode; add testsuites
2008-07-28 23:17:31 +00:00
Denis Vlasenko
6a2d40f239
hush: support "break N" and "continue N"
...
fix non-detection of builtins and applets in "v=break; ...; $v; ..." case
add testsuite entries for the above
function old new delta
builtin_break 12 93 +81
run_list 1948 1971 +23
builtin_continue 12 21 +9
pseudo_exec_argv 132 138 +6
builtin_exec 23 25 +2
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/0 up/down: 121/0) Total: 121 bytes
2008-07-28 23:07:06 +00:00
Denis Vlasenko
bcb25537d0
hush: implement break and continue
...
function old new delta
bltins 252 276 +24
builtin_continue - 12 +12
builtin_break - 12 +12
static.version_str 18 17 -1
run_list 1984 1948 -36
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 1/2 up/down: 48/-27) Total: 11 bytes
2008-07-28 23:04:34 +00:00
Denis Vlasenko
cf22c89f9a
hush: in run_list(), some loop_top ops seems to be superfluous.
...
comment them out. Also, use separate temp variable
for verification loop, helps gcc to optimize better.
function old new delta
run_list 2039 1984 -55
2008-07-28 15:17:44 +00:00
Denis Vlasenko
12acec5ad4
hush: in run_list(), last_cond_code seems to be superfluous. comment it out
...
function old new delta
run_list 2055 2039 -16
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-16) Total: -16 bytes
2008-07-28 15:15:59 +00:00
Denis Vlasenko
5e052cab17
hush: explain run_list() in detail; small optimizations
...
function old new delta
hush_main 785 786 +1
expand_variables 1447 1448 +1
builtin_exit 48 49 +1
builtin_eval 54 55 +1
run_list 2075 2055 -20
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/1 up/down: 4/-20) Total: -16 bytes
2008-07-28 15:15:09 +00:00
Denis Vlasenko
38c89210d6
documentation fix
2008-07-28 00:06:02 +00:00
Denis Vlasenko
be709c24d4
hush: finish and enable optional case...esac support. Code size cost:
...
function old new delta
run_list 1891 2075 +184
parse_stream 1764 1847 +83
expand_strvec_to_string - 83 +83
done_word 647 715 +68
static.reserved_list 144 168 +24
static.reserved_match - 12 +12
done_pipe 95 105 +10
builtin_exit 48 46 -2
builtin_eval 127 54 -73
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 5/2 up/down: 464/-75) Total: 389 bytes
2008-07-28 00:01:16 +00:00
Denis Vlasenko
8dbea7dbb1
ash: add slightly different testcase
2008-07-26 14:20:04 +00:00
Denis Vlasenko
5c13270359
ash: fix testcase to not sleep for whole 10 seconds,
...
gets annoying pretty fast. Also fix wrong message there.
2008-07-26 13:53:42 +00:00
Denis Vlasenko
87d5fd984e
ash: fix typo
2008-07-26 13:48:35 +00:00
Denis Vlasenko
4e19a9c81a
ash: hopefully close bug 4324. With testcase.
...
function old new delta
evaltree 621 869 +248
popstring 134 140 +6
2008-07-26 13:45:57 +00:00
Denis Vlasenko
2b2e267b43
ash: testsuite entries for last change
2008-07-25 13:40:06 +00:00
Denis Vlasenko
6a0ad25061
ash: dont allow e.g. exec <&10 to attach to stript's fd!
...
function old new delta
is_hidden_fd - 61 +61
redirect 1135 1164 +29
popstring 134 140 +6
printf_main 635 637 +2
evalvar 1374 1376 +2
echo_main 294 296 +2
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 5/0 up/down: 102/0) Total: 102 bytes
2008-07-25 13:34:05 +00:00
Denis Vlasenko
22f7414843
ash: prevent exec NN>&- from closing fd used for script reading
2008-07-24 22:34:43 +00:00
Denis Vlasenko
5a867317bb
ash: fix a bug where redirection fds were not closed afterwards.
...
optimize close+fcntl(DUPFD) into dup2. add testsuites.
function old new delta
copyfd 47 68 +21
argstr 1311 1298 -13
popredir 148 131 -17
redirect 1139 1107 -32
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/3 up/down: 21/-62) Total: -41 bytes
2008-07-24 19:46:38 +00:00
Denis Vlasenko
6fbb43bc3c
ash: teach ash about 123>file. It could take only 0..9 before
...
function old new delta
redirect 1052 1139 +87
need_to_remember - 36 +36
popredir 132 148 +16
fixredir 86 101 +15
readtoken1 3130 3143 +13
evalvar 1374 1376 +2
popstring 140 134 -6
cmdtxt 592 561 -31
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 5/2 up/down: 169/-37) Total: 132 bytes
2008-07-24 19:44:41 +00:00
Denis Vlasenko
6514c5e35c
ash: ducument where "no fds > 9 in redirects" limitation is.
...
no code changes.
2008-07-24 13:41:37 +00:00
Denis Vlasenko
8d924ecf38
ash: ditch dupredirect(), it was only making code harder to read.
...
incorporate it in its single callsite.
function old new delta
redirect 1054 1052 -2
changepath 196 194 -2
2008-07-24 11:34:27 +00:00
Denis Vlasenko
0b76964ae1
ash: explain redirect code a bit
...
function old new delta
redirect 1059 1054 -5
2008-07-24 07:54:57 +00:00
Denis Vlasenko
2dc240c0d6
ash: code shrink
...
function old new delta
copynode 171 180 +9
evaltreenr 615 621 +6
evaltree 615 621 +6
calcsize 121 127 +6
evalpipe 349 350 +1
redirect 1059 1057 -2
parseheredoc 129 126 -3
makename 35 32 -3
expredir 130 127 -3
parsefname 224 219 -5
popstring 140 134 -6
pipeline 276 268 -8
list 360 351 -9
readtoken1 3157 3130 -27
parse_command 1504 1460 -44
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/10 up/down: 28/-110) Total: -82 bytes
2008-07-24 06:07:50 +00:00
Bernhard Reutner-Fischer
3e8669f359
- wrap overlong lines (Cristian Ionescu-Idbohrn)
...
- s/\. /. /g;# (me)
2008-07-22 18:27:53 +00:00
Denis Vlasenko
5415c856ea
libbb: [x]fopen_for_{read,write} introduced and used.
...
(by Valdimir)
function old new delta
config_open2 - 41 +41
config_read 507 542 +35
find_pair 169 187 +18
fopen_for_write - 14 +14
fopen_for_read - 14 +14
find_main 406 418 +12
xfopen_for_write - 10 +10
xfopen_for_read - 10 +10
popstring 134 140 +6
parse_inittab 396 401 +5
next_token 923 928 +5
pack_gzip 1659 1661 +2
bb__parsespent 117 119 +2
fallbackSort 1719 1717 -2
evalvar 1376 1374 -2
qrealloc 36 33 -3
...
...
...
...
singlemount 4579 4569 -10
process_stdin 443 433 -10
patch_main 1111 1101 -10
ifupdown_main 2175 2165 -10
file_action_grep 90 80 -10
uuidcache_init 649 637 -12
hush_main 797 785 -12
read_config 230 217 -13
dpkg_main 3835 3820 -15
read_line_input 3134 3110 -24
sysctl_main 232 203 -29
config_open 40 10 -30
WARN_BAD_LINE 44 - -44
login_main 1714 1575 -139
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737) Total: -563 bytes
2008-07-21 23:05:26 +00:00
Bernhard Reutner-Fischer
a53de7f7c2
- fix spelling
2008-07-21 13:46:54 +00:00
Denis Vlasenko
7ae1cc16b4
msh: fix "while...continue" bug 3884.
2008-07-20 23:03:23 +00:00
Denis Vlasenko
c185e290ee
config help fixes
2008-07-16 23:45:11 +00:00
Denis Vlasenko
757361f9f5
hush: fix "... pattern) cmd;; esac" case
2008-07-14 08:26:47 +00:00
Denis Vlasenko
395ae45216
hush: delete unused field in struct child.
...
reinstate needed check for invalid syntax.
document command parsing in hush_doc.txt.
2008-07-14 06:29:38 +00:00
Denis Vlasenko
17f02e79f4
hush: add case statement support. It is incomplete and disabled for now.
...
costs ~300 bytes when enabled.
2008-07-14 04:32:29 +00:00
Denis Vlasenko
3177ba0852
ash: small code shrink
2008-07-13 20:39:23 +00:00
Denis Vlasenko
e7067e38ea
ash: fix segfault in "command -v"
2008-07-11 23:09:34 +00:00
Denis Vlasenko
6bdff08e6c
hush: compile fixes for !LOOPS case
2008-07-09 20:14:53 +00:00
Denis Vlasenko
733e3fbc2f
hush: support "for if in do done then; do echo $if; done" case
...
function old new delta
done_pipe 83 95 +12
parse_stream 1758 1764 +6
done_word 674 647 -27
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 18/-27) Total: -9 bytes
2008-07-06 10:01:13 +00:00
Denis Vlasenko
ff182a3d68
hush: support "for v; do ... done" syntax (implied 'in "$@"')
2008-07-05 20:29:59 +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
a60f84ebf0
*: rename ATTRIBUTE_XXX to just XXX.
2008-07-05 09:18:54 +00:00
Denis Vlasenko
fa0b56db76
sendmail: fix wrong vfork usage here too
...
*: shorten error texts
function old new delta
launch_helper - 151 +151
vfork_or_die 20 - -20
sendgetmail_main 1946 1848 -98
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/1 up/down: 151/-118) Total: 33 bytes
2008-07-01 16:09:07 +00:00
Denis Vlasenko
82604e9730
revert last two commits. vfork cannot be used in subroutine,
...
it trashes stack on return
2008-07-01 15:59:42 +00:00
Denis Vlasenko
58d60c3333
*: introduce and use xfork()
...
function old new delta
xfork - 20 +20
msh_main 1377 1380 +3
mod_process 455 446 -9
forkexit_or_rexec 30 17 -13
expand_variables 1434 1421 -13
open_transformer 91 76 -15
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/4 up/down: 23/-50) Total: -27 bytes
2008-07-01 11:11:24 +00:00
Denis Vlasenko
3da5572bfa
*: introduce and use xvfork()
...
function old new delta
time_main 1052 1285 +233
crontab_main 623 856 +233
ifupdown_main 2202 2403 +201
xvfork - 20 +20
passwd_main 1049 1053 +4
grave 1068 1066 -2
script_main 935 921 -14
vfork_or_die 20 - -20
vfork_compressor 206 175 -31
open_as_user 109 - -109
popen2 218 - -218
edit_file 910 690 -220
run_command 268 - -268
------------------------------------------------------------------------------
(add/remove: 1/4 grow/shrink: 4/4 up/down: 691/-882) Total: -191 bytes
2008-07-01 10:40:41 +00:00
Denis Vlasenko
ce13b76002
libbb: shrink monotonic_XXX functions, introduce monotonic_ns
...
(unused for now)
function old new delta
get_mono - 31 +31
sv_main 1228 1234 +6
expand 1693 1697 +4
get_address 178 181 +3
utoa_to_buf 108 110 +2
builtin_exit 46 48 +2
qrealloc 36 33 -3
qgravechar 109 106 -3
ash_main 1383 1380 -3
grep_file 850 846 -4
popstring 140 134 -6
monotonic_us 85 60 -25
monotonic_sec 41 16 -25
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 5/7 up/down: 48/-69) Total: -21 bytes
2008-06-29 02:25:53 +00:00
Denis Vlasenko
defc1ea340
*: introduce and use FAST_FUNC: regparm on i386, otherwise no-on
...
text data bss dec hex filename
808035 611 6868 815514 c719a busybox_old
804472 611 6868 811951 c63af busybox_unstripped
2008-06-27 02:52:20 +00:00
Denis Vlasenko
26bc57d8b2
ash: improve comments
2008-06-27 00:29:34 +00:00
Denis Vlasenko
448d30ee17
ash: fix very weak $RANDOM generator; and move even more things
...
out of data/bss
text data bss dec hex filename
807935 611 6884 815430 c7146 busybox_old
808035 611 6868 815514 c719a busybox_unstripped
2008-06-27 00:24:11 +00:00
Denis Vlasenko
843cbd54d1
ash: move stuff out of data/bss
...
text data bss dec hex filename
807939 611 6900 815450 c715a busybox_old
807935 611 6884 815430 c7146 busybox_unstripped
2008-06-27 00:23:18 +00:00
Denis Vlasenko
f5d8c90d73
style fixes, no code changes
2008-06-26 14:32:57 +00:00
Denis Vlasenko
7049ff8696
whitespace fixes. no code changes
2008-06-25 09:53:17 +00:00
Denis Vlasenko
5ec6132c98
hush: ifdef out parts which are not needed
...
if neither loops nor ifs are supported. Code savings:
function old new delta
parse_stream 1758 1757 -1
checkjobs 335 318 -17
done_pipe 74 52 -22
expand_variables 1437 1407 -30
run_list 1232 1189 -43
parse_and_run_stream 328 267 -61
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/6 up/down: 0/-174) Total: -174 bytes
2008-06-24 00:50:07 +00:00
Denis Vlasenko
003f9fb213
hush: kill some old unused fields; small code shrink
...
function old new delta
builtin_exit 48 47 -1
checkjobs 351 335 -16
checkjobs_and_fg_shell 60 35 -25
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-42) Total: -42 bytes
2008-06-24 00:47:58 +00:00
Denis Vlasenko
cc3f20b9bd
fix breakage found by randomconfig
2008-06-23 22:31:52 +00:00
Denis Vlasenko
211b59be43
hush: trivial fix in debug code
2008-06-23 16:28:53 +00:00
Denis Vlasenko
2f5d0cd511
ash: trivial code readability fixes
2008-06-23 13:24:19 +00:00
Denis Vlasenko
2b75a94118
ash: improve readability of the code. No real code changes.
2008-06-23 13:06:34 +00:00
Denis Vlasenko
ef527f50e6
ash: optional support for $'...\t...\n...' bashism
...
function old new delta
readtoken1 2824 3172 +348
static.C_escapes - 18 +18
parse_command 1504 1500 -4
SIT 89 83 -6
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/2 up/down: 366/-10) Total: 356 bytes
2008-06-23 01:52:30 +00:00
Denis Vlasenko
b07a496229
ash: minor shrink (mostly smallints) and variable renaming
...
function old new delta
optschanged 85 91 +6
tryexec 115 118 +3
xxreadtoken 290 292 +2
raise_error_unexpected_syntax 75 77 +2
bltincmd 6 8 +2
parseheredoc 128 129 +1
static.is_interactive 4 1 -3
readtoken 156 153 -3
lasttoken 4 1 -3
evalcommand 1147 1144 -3
checkkwd 4 1 -3
back_exitstatus 4 1 -3
pipeline 282 276 -6
list 369 360 -9
ash_main 1402 1393 -9
options 616 606 -10
readtoken1 2823 2811 -12
parse_command 1529 1507 -22
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 6/12 up/down: 21/-91) Total: -70 bytes
text data bss dec hex filename
807603 611 6908 815122 c7012 busybox_old
807545 611 6900 815056 c6fd0 busybox_unstripped
2008-06-22 13:16:23 +00:00
Denis Vlasenko
9cd4c76b50
ash: fix "shift BIGNUM" and "read with no variable name" bugs.
...
omg. hush testsuite helps to find bugs in ash! what next?
function old new delta
static.arg_REPLY - 8 +8
readcmd 1023 1021 -2
shiftcmd 129 125 -4
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/2 up/down: 8/-6) Total: 2 bytes
2008-06-18 19:22:19 +00:00
Denis Vlasenko
1ba323e5b6
cosmetics in hush testsuites
2008-06-18 17:53:57 +00:00
Denis Vlasenko
324a3fdf87
fix globbing in unquoted $* and $@
2008-06-18 17:49:58 +00:00
Denis Vlasenko
55789c6646
hush: fix a bug with backslashes improperly handled in unquoted variables.
...
with previous patch:
function old new delta
parse_stream 1638 1758 +120
expand_on_ifs 97 174 +77
free_pipe 206 237 +31
setup_redirect 217 220 +3
setup_redirects 143 144 +1
done_word 698 688 -10
free_strings 38 - -38
expand_variables 1451 1403 -48
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 5/2 up/down: 232/-96) Total: 136 bytes
2008-06-18 16:30:42 +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
c1c63b622d
hush: fix last hush-bugs testcase (disappearing "", $empty"" etc)
2008-06-18 09:20:35 +00:00
Denis Vlasenko
16c2fea280
hush: fix $$ handling
2008-06-17 12:28:44 +00:00
Denis Vlasenko
6eaf8deddd
hush: fix "for a in; do echo 'I should never run'; done" bug
2008-06-17 12:09:21 +00:00
Denis Vlasenko
988339259f
move glob_and_assign.tests from hush-bugs to hush-glob
2008-06-17 07:26:52 +00:00
Denis Vlasenko
30c9cc5b17
hush: continue fixing quoting and subst: fix glob_and_assign.tests.
2008-06-17 07:24:29 +00:00
Denis Vlasenko
c7985b76c5
hush: cleanup pass, the biggest is - moved builtins to the end of the file,
...
they really annoy in the middle of parser code. no real code changes.
2008-06-17 05:43:38 +00:00
Denis Vlasenko
b61e13d247
hush: fix memory leak. it was actually rather invloved problem.
...
Now finally glob/variable expansion is done IN THE RIGHT ORDER!
It opens up a possibility to cleanly fix remaining known bugs.
function old new delta
o_save_ptr 115 286 +171
o_save_ptr_helper - 115 +115
done_word 591 690 +99
o_get_last_ptr - 31 +31
expand_on_ifs 125 97 -28
add_string_to_strings 28 - -28
run_list 1895 1862 -33
debug_print_strings 42 - -42
add_strings_to_strings 126 - -126
expand_variables 1550 1394 -156
o_debug_list 168 - -168
expand_strvec_to_strvec 388 10 -378
------------------------------------------------------------------------------
(add/remove: 2/4 grow/shrink: 2/4 up/down: 416/-959) Total: -543 bytes
2008-06-17 05:11:43 +00:00
Denis Vlasenko
ccce59d562
hush: fixing fallout from last big glob fix:
...
fix segfault; identify where we leak memory
function old new delta
expand_strvec_to_strvec 353 336 -17
2008-06-16 14:35:57 +00:00
Denis Vlasenko
32d8423e63
hush: delete hush-bugs/glob_and_vars.tests for real
2008-06-16 12:53:33 +00:00
Denis Vlasenko
82dfec3e4e
hush: fix hush-bugs/glob_and_vars.tests testcase:
...
globbing is now done _after_ variable/`cmd` substitution
function old new delta
expand_strvec_to_strvec 7 353 +346
expand_variables 1348 1383 +35
add_string_to_strings - 28 +28
globhack 114 - -114
done_word 778 579 -199
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 2/1 up/down: 409/-313) Total: 96 bytes
2008-06-16 12:47:11 +00:00
Denis Vlasenko
5703c22a51
hush: eliminate PARSEFLAG_SEMICOLON and ctx->parse_type field.
...
function old new delta
parse_and_run_file 30 27 -3
hush_main 795 792 -3
initialize_context 45 39 -6
done_word 791 778 -13
parse_and_run_stream 375 338 -37
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/5 up/down: 0/-62) Total: -62 bytes
2008-06-15 11:49:42 +00:00
Denis Vlasenko
f8d01d3f66
hush: fix a bug where we were requiring semicolon here: (cmd;)
...
also fix a bug where after error prompt is not shown.
function old new delta
parse_stream 1612 1638 +26
parse_and_run_stream 361 375 +14
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 40/0) Total: 40 bytes
2008-06-14 17:13:20 +00:00
Denis Vlasenko
dd316dd283
hush: add support for ':'; create testsuite entries
...
text data bss dec hex filename
809569 612 7044 817225 c7849 busybox_old
809528 612 7044 817184 c7820 busybox_unstripped
2008-06-14 15:50:55 +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
29038c06d6
ash: small cosmetic change
2008-06-14 06:14:02 +00:00
Denis Vlasenko
2659c63213
ash: fix ${var/s/r} handling, add testcase.
2008-06-14 06:04:59 +00:00
Denis Vlasenko
7e3d33b6ce
hush: speed up o_addX{chr,str}
...
function old new delta
o_addQstr - 162 +162
o_addQchr - 89 +89
o_addstr - 58 +58
o_addqchr 50 81 +31
expand_on_ifs 103 97 -6
add_till_backquote 92 82 -10
expand_variables 1281 1217 -64
parse_stream 1675 1609 -66
o_addqstr 155 - -155
------------------------------------------------------------------------------
(add/remove: 3/1 grow/shrink: 1/4 up/down: 340/-301) Total: 39 bytes
text data bss dec hex filename
759870 604 6684 767158 bb4b6 busybox_old
759909 604 6684 767197 bb4dd busybox_unstripped
2008-06-12 13:31:04 +00:00
Denis Vlasenko
76db5adbf7
hush: fix for nested $()s with escapes + testsuite
2008-06-12 12:58:20 +00:00
Denis Vlasenko
87f40bac14
hush: more backtick and quoting fixes...
2008-06-10 22:39:37 +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
2e76c3f901
hush: fix yet another fallout
...
hush: move fixed testsuites out of hush-bugs/*
2008-06-10 18:27:50 +00:00
Denis Vlasenko
895bea2303
hush: fix some fallout from prev commits, add testsuite
2008-06-10 18:06:24 +00:00
Denis Vlasenko
46ccdcb96e
hush: search/and/replace style cleanups, no code changes
2008-06-10 18:05:12 +00:00
Denis Vlasenko
7b4f3f13d3
hush: fix two nasty bugs:
...
hush-bugs/tick2.tests: ok
hush-bugs/tick.tests: ok
function old new delta
parse_stream 1332 1557 +225
b_addptr - 97 +97
add_till_backquote - 82 +82
b_addstr - 58 +58
b_grow_by - 50 +50
setup_string_in_str - 29 +29
expand_variables 1196 1199 +3
expand_on_ifs 100 97 -3
b_addqchr 57 50 -7
parse_and_run_string 48 31 -17
lookup_param 27 - -27
b_addchr 75 45 -30
count_ifs 44 - -44
process_command_subs 222 - -222
------------------------------------------------------------------------------
(add/remove: 5/3 grow/shrink: 2/4 up/down: 544/-350) Total: 194 bytes
text data bss dec hex filename
759354 604 6684 766642 bb2b2 busybox_old
759534 604 6684 766822 bb366 busybox_unstripped
2008-06-10 18:04:32 +00:00
Denis Vlasenko
76d50418b3
hush: fix a memory leak in NOMMU case
2008-06-10 16:19:39 +00:00
Denis Vlasenko
3fe4f986a0
less: fix a case when regexp matches ""
...
hush: remove wrong comment, expand another one
2008-06-09 16:02:39 +00:00
Mike Frysinger
98a6f56d49
reword the error msg so people realize that they broke it, they buy it
2008-06-09 09:38:45 +00:00
Denis Vlasenko
598bb732e8
cosmetics
2008-06-09 07:58:53 +00:00
Denis Vlasenko
2d0529c9bc
msh_function.patch: picked it up in the wild.
...
Fixed allocation bugs (it was allocating
one too small vectors) but it still is very buggy,
thus not applied.
2008-06-09 07:50:25 +00:00
Denis Vlasenko
ed9d621cf4
msh: style cleanups. No code changes.
2008-06-09 07:44:19 +00:00
Denis Vlasenko
b8c9354114
hush: add yet another bug to testsuite :(
2008-06-08 16:47:09 +00:00
Denis Vlasenko
66d56c565e
ash testsuite: modify it so that it can run hush and msh tests
2008-06-05 09:07:02 +00:00
Denis Vlasenko
cd2663f15e
ash: optional printf builtin. +25 bytes if off, +35 if on.
...
by Cristian Ionescu-Idbohrn.
2008-06-01 22:36:39 +00:00
Denis Vlasenko
d78920675f
msh: fix ENOENT testcase
2008-06-01 14:16:54 +00:00
Denis Vlasenko
447bd66837
msh: fix the case where the file has exec bit but can't be run directly
...
(run "$SHELL $file" instead)
msh: fix exit codes when command is not found or can't be execed
(with testcases)
2008-05-30 22:28:32 +00:00
Denis Vlasenko
4830fc565a
hush: make it ignore SIGINT etc in a config wich has no job control
2008-05-25 21:50:55 +00:00
Bernhard Reutner-Fischer
5e25ddb7d3
- use STD*_FILENO some more. No object-code changes
2008-05-19 09:48:17 +00:00
Bernhard Reutner-Fischer
636a1f85e8
- use EXIT_{SUCCESS,FAILURE}. No object-code changes
2008-05-19 09:29:47 +00:00