aboutsummaryrefslogtreecommitdiff
path: root/shell
AgeCommit message (Collapse)Author
2008-10-27ash: fix "while kill -0 $child; do true; done" looping forever.Denis Vlasenko
2008-10-20dc: conditionalize parts which require libmDenis Vlasenko
2008-10-20ash: fix NOEXEC mode - we were forgetting to pass environment!Denis Vlasenko
env: promote to NOEXEC hd: promote to NOEXEC, as hexdump is NOEXEC already
2008-10-20ash: fix a bug in standalone mode (corrupted getopt() state)Denis Vlasenko
2008-10-14hush: add TODODenis Vlasenko
2008-10-14hush: next small step towards functionsDenis Vlasenko
2008-10-13hush: fix NOMMU bug (analogous to preceding commit for MMU)Denis Vlasenko
2008-10-13testcase for the last fixDenis Vlasenko
2008-10-13hush: fix trashing of environment by local env vars:Denis Vlasenko
a=a; a=b cmd; - a was unset! +57 bytes function old new delta add_string_to_strings - 110 +110 putenv_all - 27 +27 run_list 2086 2111 +25 free_strings - 7 +7 free_pipe 210 208 -2 add_malloced_string_to_strings 110 - -110 ------------------------------------------------------------------------------ (add/remove: 3/1 grow/shrink: 1/1 up/down: 169/-112) Total: 57 bytes
2008-10-09hush: fix environment and memory leaks, add tests for themDenis Vlasenko
function old new delta add_malloced_string_to_strings - 110 +110 run_list 1999 2086 +87 free_strings_and_unsetenv - 87 +87 hush_version_str - 18 +18 pseudo_exec_argv 139 146 +7 static.version_str 17 - -17 free_pipe 237 210 -27 done_word 790 642 -148 ------------------------------------------------------------------------------ (add/remove: 3/1 grow/shrink: 2/2 up/down: 309/-192) Total: 117 bytes
2008-10-09hush: preparatory work for implementing functionsDenis Vlasenko
2008-10-09hush: massive renaming of ill-named structures and fieldsDenis Vlasenko
hush: error out on constructs like: $ abc(def) - was working as if it was (abcdef) $ case b in abc(a|(b) echo YES; esac - was ignoring 'abc' and extra '('
2008-10-07ash: support &> redirection (bashism). ~90 bytes of codeDenis Vlasenko
2008-10-06ash: some beautification work, no code changesDenis Vlasenko
2008-10-05ash: implement ">&file" bashism. ~100 bytes.Denis Vlasenko
2008-09-27style fixes, no code changesDenis Vlasenko
2008-09-25- fix compilation on OSF/1Bernhard Reutner-Fischer
2008-08-16ash: fix "(cat < file)" hang introduced by rev 22944.Denis Vlasenko
2008-08-06- fix typoBernhard Reutner-Fischer
2008-08-04hush: fix mishandling of a'b'c=fff as assignments. They are not.Denis Vlasenko
function old new delta parse_stream 1920 2004 +84 done_word 715 752 +37 parse_and_run_stream 328 333 +5 builtin_exec 25 29 +4 pseudo_exec_argv 138 139 +1 run_list 2006 1999 -7 is_assignment 215 134 -81 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 5/2 up/down: 131/-88) Total: 43 bytes
2008-08-03hush: remove a comment about already fixed bugDenis Vlasenko
2008-07-31hush: support $_NUMBERS variable namesDenis Vlasenko
2008-07-31hush: fix "case ... in <newline> word)..."Denis Vlasenko
2008-07-31hush: support "pattern1|pattern2...)" in case statementsDenis Vlasenko
parse_stream 1847 1861 +14 run_list 1995 2006 +11
2008-07-30ash: bash compat: "shift $BIGNUM" is equivalent to "shift 1"Denis Vlasenko
2008-07-29hush: trivial code shrinkDenis Vlasenko
function old new delta builtin_continue 48 22 -26
2008-07-29hush: use G.xxx instead of #define xxx G.xxx. We have too many globalsDenis Vlasenko
there and #defines get messy. Remove one write-only G.variable.
2008-07-29randomconfig fixDenis Vlasenko
2008-07-29hush: small fix for repeated continue and fix for wrong loop depth countDenis Vlasenko
after Ctrl-C; with testcase for first one
2008-07-29hush: fix inverted check (was making all break's to act as "break 99999")Denis Vlasenko
2008-07-29hush: fix break'ing out of {} and () groups; with testcaseDenis Vlasenko
function old new delta builtin_break 93 129 +36 builtin_continue 21 47 +26 run_list 1973 1976 +3
2008-07-29randomconfig fixesDenis Vlasenko
2008-07-29hush: add #defines to switch off break/continue if loops are not supportedDenis Vlasenko
*: remove a few inline keywords no code changes
2008-07-28hush: fix "while false; ..." exitcode; add testsuitesDenis Vlasenko
2008-07-28hush: support "break N" and "continue N"Denis Vlasenko
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-28hush: implement break and continueDenis Vlasenko
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-28hush: in run_list(), some loop_top ops seems to be superfluous.Denis Vlasenko
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-28hush: in run_list(), last_cond_code seems to be superfluous. comment it outDenis Vlasenko
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-28hush: explain run_list() in detail; small optimizationsDenis Vlasenko
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-28documentation fixDenis Vlasenko
2008-07-28hush: finish and enable optional case...esac support. Code size cost:Denis Vlasenko
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-26ash: add slightly different testcaseDenis Vlasenko
2008-07-26ash: fix testcase to not sleep for whole 10 seconds,Denis Vlasenko
gets annoying pretty fast. Also fix wrong message there.
2008-07-26ash: fix typoDenis Vlasenko
2008-07-26ash: hopefully close bug 4324. With testcase.Denis Vlasenko
function old new delta evaltree 621 869 +248 popstring 134 140 +6
2008-07-25ash: testsuite entries for last changeDenis Vlasenko
2008-07-25ash: dont allow e.g. exec <&10 to attach to stript's fd!Denis Vlasenko
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-24ash: prevent exec NN>&- from closing fd used for script readingDenis Vlasenko
2008-07-24ash: fix a bug where redirection fds were not closed afterwards.Denis Vlasenko
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-24ash: teach ash about 123>file. It could take only 0..9 beforeDenis Vlasenko
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