summaryrefslogtreecommitdiff
path: root/shell/hush.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* switch_root: improve behavior on error; improve help textDenis Vlasenko2009-04-211-1/+1
| | | | | *: make "can't execute '%s'" message uniform
* hush: speed up set_local_varDenis Vlasenko2009-04-211-10/+11
| | | | | | function old new delta set_local_var 265 290 +25
* *: mass renaming of USE_XXXX to IF_XXXXDenis Vlasenko2009-04-211-11/+11
| | | | | | and SKIP_XXXX to IF_NOT_XXXX - the second one was especially badly named. It was not skipping anything!
* hush: export -n supportDenis Vlasenko2009-04-201-12/+41
| | | | | | | | function old new delta builtin_export 206 256 +50 set_local_var 248 265 +17 expand_variables 2204 2203 -1
* hush: fix stdin of backgrounded pipe Denis Vlasenko2009-04-201-10/+18
| | | | | | function old new delta run_list 2450 2502 +52
* hush: fix "export not_yet_defined_var", fix parsing of "cmd | }"Denis Vlasenko2009-04-191-20/+25
| | | | | | | | | | corner case; improve hush_leaktool.sh; fix some false positives in testsuite function old new delta builtin_export 191 206 +15 parse_stream 2196 2200 +4
* same as previous, but -100 bytesDenis Vlasenko2009-04-191-23/+15
|
* hush: fix handling of } which is not a closing one in { cmd; }Denis Vlasenko2009-04-191-17/+36
| | | | | | | function old new delta parse_stream 2176 2302 +126 builtin_unset 381 387 +6
* fix build errors when function support is turned offMike Frysinger2009-04-181-2/+14
|
* hush: fix thinko in error msgDenis Vlasenko2009-04-181-4/+3
|
* hush: fix "trap -- handler SIGs..."; escape handlers in "trap" outputDenis Vlasenko2009-04-181-93/+117
|
* hush: fix thinko in unset_funcDenis Vlasenko2009-04-181-0/+1
|
* hush: implement unset -f; beautify the handling of signal-killed pipeDenis Vlasenko2009-04-181-23/+68
| | | | | | | | | | four TODOs are gone function old new delta builtin_unset 271 364 +93 checkjobs 394 428 +34 builtin_exit 49 47 -2
* hush: deal with umask TODO (symbolic modes)Denis Vlasenko2009-04-181-15/+24
| | | | | | function old new delta builtin_umask 79 125 +46
* hush: implement proper SIGHUP handlingDenis Vlasenko2009-04-181-95/+108
| | | | | | | | function old new delta check_and_run_traps 164 229 +65 insert_bg_job 376 366 -10 hush_main 937 927 -10
* builtin_return's parameter is not unusedDenis Vlasenko2009-04-171-1/+1
|
* hush: return builtin by Bayram Kurumahmut (kbayram AT ubicom.com)Denis Vlasenko2009-04-171-14/+79
| | | | | ~+200 bytes
* hush: set $n properly for "source" builtinDenis Vlasenko2009-04-171-40/+57
| | | | | | | | | | | function old new delta restore_G_args - 78 +78 save_and_replace_G_args - 64 +64 builtin_source 72 107 +35 run_list 2549 2367 -182 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 1/1 up/down: 177/-182) Total: -5 bytes
* hush: fix non-interactive response to pipe being stopped.Denis Vlasenko2009-04-171-19/+18
| | | | | | function old new delta checkjobs 380 394 +14
* hush: unblock TERM, INT, HUP in child shells too.Denis Vlasenko2009-04-171-31/+42
|
* hush: disallow "{echo hi; }" (require whitespace)Denis Vlasenko2009-04-171-20/+35
| | | | | | | | | | | and "{ echo hi }" (require semicolon or &) function old new delta parse_stream 2098 2176 +78 done_command 98 84 -14 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/1 up/down: 78/-14) Total: 64 bytes
* hush: add a TODODenis Vlasenko2009-04-161-0/+1
|
* hush: fix "if { echo foo; } then { echo bar; } fi" parsingDenis Vlasenko2009-04-161-17/+26
| | | | | | | function old new delta done_word 728 793 +65 parse_stream 2084 2098 +14
* hush: stop ignoring ^Z in child shellsDenis Vlasenko2009-04-151-8/+19
|
* hush: remove old disabled ^Z handlingDenis Vlasenko2009-04-151-68/+7
|
* hush: fix heredoc_huge.tests broken in last commitsDenis Vlasenko2009-04-151-1/+4
|
* hush: remove TODO comment itself :)Denis Vlasenko2009-04-151-2/+1
|
* hush: deal with a TODO: move argv_from_re_execing out of globalsDenis Vlasenko2009-04-151-27/+39
| | | | | | | | | | | | | function old new delta generate_stream_from_string 156 165 +9 setup_heredoc 312 320 +8 re_execute_shell 387 391 +4 pseudo_exec_argv 129 133 +4 run_pipe 1790 1783 -7 clean_up_after_re_execute 30 - -30 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 4/1 up/down: 25/-37) Total: -12 bytes
* randomconfig fixesDenis Vlasenko2009-04-141-1/+5
|
* hush: make function support configurableDenis Vlasenko2009-04-131-2/+0
|
* hush: pass functions to child shells on NOMMUDenis Vlasenko2009-04-121-43/+98
| | | | | | | | | | | function old new delta new_function - 123 +123 hush_main 1198 1262 +64 re_execute_shell 341 387 +46 run_pipe 1872 1790 -82 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/1 up/down: 233/-82) Total: 151 bytes
* hush: remove functions from TODOsDenis Vlasenko2009-04-111-2/+0
|
* hush: improve debugging outputDenis Vlasenko2009-04-111-101/+126
|
* hush: fix "while...do f1() {a;}; f1; f1 {b;}; f1; done" bugDenis Vlasenko2009-04-111-19/+55
|
* hush: add function testsDenis Vlasenko2009-04-101-19/+19
|
* hush: pass $n to functionsDenis Vlasenko2009-04-101-12/+50
| | | | | | | | | function old new delta run_pipe 1183 1325 +142 run_list 1219 1220 +1 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/0 up/down: 143/0) Total: 143 bytes
* hush: fix a few thinkos in function support; make it work on NOMMU;Denis Vlasenko2009-04-101-69/+120
| | | | | | functions in child shells now even have $n passed to them! :) (in main shell it still doesn't work)
* hush: first stab at function support. argv passing is not coded yet.Denis Vlasenko2009-04-101-64/+169
| | | | | | | | | | | | | | | | | | | | Only very rudimentary testing was done. With function support off, code growth is zero, with it on: function old new delta run_list 2158 2339 +181 parse_stream 1929 2044 +115 find_builtin 24 67 +43 find_function - 36 +36 file_get 244 264 +20 pseudo_exec_argv 145 160 +15 free_strings - 7 +7 free_pipe 183 181 -2 done_word 735 728 -7 expand_variables 2227 2204 -23 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 5/3 up/down: 417/-32) Total: 385 bytes
* hush: reinstate accidentally reverted comment fix Denis Vlasenko2009-04-101-1/+2
|
* hush: fix some TODOs. TODO in export builting: +250 bytes.Denis Vlasenko2009-04-101-51/+76
| | | | | | | | | | | | | | | | | | simplify unexpected EOF handling. function old new delta builtin_export 117 374 +257 o_reset_to_empty_unquoted - 21 +21 parse_stream 1926 1929 +3 syntax_error_unterm_ch 31 32 +1 handle_dollar 644 641 -3 parse_stream_dquoted 307 298 -9 add_till_backquote 106 97 -9 add_till_closing_paren 303 286 -17 o_reset 21 - -21 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 3/4 up/down: 282/-59) Total: 223 bytes
* hush: tighten up "for" variable name check.Denis Vlasenko2009-04-101-11/+18
| | | | | | | | | | Add TODOs. Disable redir4.right part where we differ from bash. It is not a bug per standards. Add a few tests, one is in hush-bugs section: and_or_and_backgrounding.right. It will likely bite users in real world usage.
* hush: fix typo in commentDenis Vlasenko2009-04-101-1/+2
|
* fix segfault on syntax error code pathDenis Vlasenko2009-04-101-6/+7
|
* hush: readability improvements.Denis Vlasenko2009-04-101-97/+119
| | | | | | fix some more obscure bugs. a new redir4.tests is known to fail.
* dont crash if the variable we do substitution on is not setMike Frysinger2009-04-091-12/+14
|
* hush: shrink and make more versatile error-reporting machineryDenis Vlasenko2009-04-091-39/+46
| | | | | | | | | | | | | | | | | function old new delta syntax_error_unterm_ch - 31 +31 syntax_error_unterm_str - 14 +14 parse_stream 2356 2361 +5 syntax_error_at 12 14 +2 syntax_error 25 27 +2 syntax_error_unterminated 28 - -28 expand_variables 2063 2031 -32 ------------------------------------------------------------------------------ (add/remove: 2/1 grow/shrink: 3/1 up/down: 54/-60) Total: -6 bytes text data bss dec hex filename 67278 197 3184 70659 11403 busybox_old 67228 197 3184 70609 113d1 busybox_unstripped
* hush: deal with some easier TODOsDenis Vlasenko2009-04-091-116/+173
| | | | | | | | | | | | | | | | | | | | | | | | function old new delta is_well_formed_var_name - 87 +87 builtin_read 49 86 +37 die_if_script - 31 +31 syntax_error_unterminated - 28 +28 syntax_error 26 51 +25 done_word 768 788 +20 syntax_error_at - 12 +12 parse_stream_dquoted 320 328 +8 expand_variables 2064 2063 -1 run_list 1225 1220 -5 add_till_closing_paren 308 303 -5 add_till_backquote 111 106 -5 handle_dollar 812 803 -9 parse_stream 2378 2356 -22 parse_redirect 408 372 -36 maybe_die 44 - -44 is_assignment 215 134 -81 ------------------------------------------------------------------------------ (add/remove: 4/1 grow/shrink: 4/8 up/down: 248/-208) Total: 40 bytes
* hush: plug the leak of expanded heredocDenis Vlasenko2009-04-091-5/+10
|
* hush: fix EXIT trap recursion case; check redirection failuresDenis Vlasenko2009-04-091-30/+46
| | | | | | | | | | | function old new delta run_pipe 1299 1328 +29 hush_exit 90 102 +12 hush_main 1172 1179 +7 run_list 1226 1225 -1 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/1 up/down: 48/-1) Total: 47 bytes
* hush: typo in commentDenis Vlasenko2009-04-091-1/+1
|