Denys Vlasenko
605067b426
hush: revert a recent buggy change which resulted in two HUSH_VERSIONs
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-06 12:10:51 +02:00
Denys Vlasenko
83b900fb82
fix typo in comment
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-06 11:47:55 +02:00
Denys Vlasenko
c3adfacd22
hush: fix another corner case with backslashes in heredocs
...
function old new delta
parse_stream 2395 2432 +37
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-06 11:46:03 +02:00
Denys Vlasenko
77b32ccbf2
hush: fix backslash and terminator handling in <<[-]["]heredoc["]
...
function old new delta
parse_stream 2339 2395 +56
expand_pseudo_dquoted 104 118 +14
parse_stream_dquoted 296 300 +4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 74/0) Total: 74 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-06 11:27:32 +02:00
Denys Vlasenko
c49d2d9793
hush: fix globbing+backslashes in unquoted $var expansion
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-06 10:26:37 +02:00
Denys Vlasenko
d383b49aef
hush: remove disabled CMD_SINGLEWORD_NOGLOB_COND, rename o_glob->perform_glob
...
+ other small tweaks to comments and such
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-06 10:22:13 +02:00
Denys Vlasenko
96f064d416
shell: remove lash and bbsh
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-06 10:18:21 +02:00
Denys Vlasenko
e09bff3341
runit_lib: remove/inline a few more things
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 19:28:29 +02:00
Dan Fandrich
8d789e4197
tar: add a test for extraction of read-only directory
...
Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 16:16:46 +02:00
Cristian Ionescu-Idbohrn
6957d79bd6
remove redundant ENABLE_DESKTOP in procps/ps.c
...
Signed-off-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 15:49:37 +02:00
Denys Vlasenko
b36abf2dfc
hush: big reordering: move parser functions to the beginning. no code changes
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 14:50:59 +02:00
Denys Vlasenko
38292b68c9
hush: rename o_quoted to has_quoted_part; small code shrink
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 14:49:40 +02:00
Denys Vlasenko
f2dc20c2d5
hush: move variable expansion into a separate function. No logic changes
...
function old new delta
expand_one_var - 1551 +1551
expand_vars_to_list 2833 1175 -1658
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 1551/-1658) Total: -107 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 14:48:11 +02:00
Denys Vlasenko
36f774a0cd
hush: add support for ${var/pattern/repl}, conditional on bash compat
...
function old new delta
expand_vars_to_list 2386 2833 +447
expand_string_to_string 69 110 +41
parse_dollar 681 721 +40
hush_main 963 945 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/1 up/down: 528/-18) Total: 510 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 14:47:58 +02:00
Denys Vlasenko
701e127f7d
hush: optimize #[#] and %[%] for speed. size -2 bytes.
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-04 21:21:07 +02:00
Denys Vlasenko
e298ce69ba
hush: fix handling of backslashes in variable assignment
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-04 19:52:44 +02:00
Denys Vlasenko
8ae6e9be5c
lzop: fix misordered "v=NULL; free(v)", small code shrink
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-04 19:46:52 +02:00
Denys Vlasenko
0d7cb4cc9e
fix false positive in testsuite/tar.tests
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 17:22:56 +02:00
Dan Fandrich
eb2bf5b6bf
Fix some test cases
...
The tar tests still don't pass, but at least now it's because of
a problem with Busybox and not the tests themselves.
Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 17:09:51 +02:00
Denys Vlasenko
2ab3acb274
ifupdown: %client%, not %clientid%
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 16:58:37 +02:00
Denys Vlasenko
3926363214
lineedit: on tab completion, show filenames obly in all cases (bash compat)
...
function old new delta
complete_cmd_dir_file 731 730 -1
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 14:11:08 +02:00
Denys Vlasenko
76939e7b72
lineedit: allocate matchBuf only temporarily: saves MAX_LINELEN bytes
...
function old new delta
input_tab 1027 1041 +14
build_match_prefix 590 562 -28
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 14/-28) Total: -14 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 14:09:24 +02:00
Denys Vlasenko
ba0e103a66
lineedit: de-indent large block in input_tab. No logic changes.
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 14:08:24 +02:00
Denys Vlasenko
a46e16ef52
lineedit: rename tmp -> chosen_match; small code shrink
...
function old new delta
input_tab 1016 1012 -4
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 13:05:51 +02:00
Denys Vlasenko
9b56bf5416
lineedit: stop using permanent int_buf[] (16k!): allocate it
...
Now it is allocated temporarily only for the duretion of prefix generation,
and also we only allocate the needed size, not maximally possible.
function old new delta
build_match_prefix 579 590 +11
remove_chunk 43 28 -15
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 11/-15) Total: -4 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 13:02:47 +02:00
Denys Vlasenko
81254ed387
lineedit: remove pos_buf[] array (up to 16k!); fix compat bugs
...
pos_buf is a strange hack, easy to do without it.
This also allows lines >32k long to be handled.
Also simplified match prefix generations and made behavior more like bash.
function old new delta
remove_chunk - 43 +43
collapse_pos 79 - -79
build_match_prefix 804 579 -225
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/1 up/down: 43/-304) Total: -261 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:59:15 +02:00
Denys Vlasenko
3c460b005c
lineedit: return prefix len from tab completion helpers
...
This kills horrific logic which deletes and re-adds prefix (!)
function old new delta
complete_cmd_dir_file 705 731 +26
complete_username 121 124 +3
input_tab 1041 1016 -25
build_match_prefix 838 804 -34
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/2 up/down: 29/-59) Total: -30 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:56:36 +02:00
Denys Vlasenko
2679e3c8cc
lineedit: clean up tab completion code (variable reuse, comments)
...
Noted bugs in behavior.
Added debugging machinery.
Decoupled variables reused for unrelated purposes: apparently,
when not forced to use liveness analysis, gcc fares better.
function old new delta
complete_cmd_dir_file 699 705 +6
collapse_pos 75 79 +4
build_match_prefix 892 838 -54
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 10/-54) Total: -44 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:53:15 +02:00
Denys Vlasenko
57ea9b488b
preparatory cleanup patch for tab completion fixes
...
renames and deinlines a few functions
function old new delta
input_tab - 1041 +1041
complete_cmd_dir_file - 699 +699
complete_username - 121 +121
username_completion 121 - -121
read_line_input 5002 3313 -1689
------------------------------------------------------------------------------
(add/remove: 3/1 grow/shrink: 0/1 up/down: 1861/-1810) Total: 51 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:51:36 +02:00
Denys Vlasenko
7063e86d0d
lineedit: small readability improvement (same code)
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-02 12:44:39 +02:00
Denys Vlasenko
61a36af45d
lineedit: fix completion with Unicode chars
...
function old new delta
read_line_input 4966 5002 +36
bb_wcstombs 170 159 -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 36/-11) Total: 25 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-02 12:03:11 +02:00
Denys Vlasenko
b068bd7a41
lineedit: preparatory cleanup patch for Unicode completion fix
...
Some logic changes and function renames. The fix will follow this patch,
to mkae it distinct from cleanup.
function old new delta
build_match_prefix - 892 +892
username_completion - 121 +121
read_line_input 4902 4966 +64
username_tab_completion 235 - -235
find_match 892 - -892
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 1/0 up/down: 1077/-1127) Total: -50 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-02 12:01:11 +02:00
Denys Vlasenko
7aa63042d0
libbb: xfunc_error_retval can be a byte
...
function old new delta
xfunc_die 55 60 +5
log_and_exit 43 45 +2
hush_main 961 963 +2
xfunc_error_retval 4 1 -3
tty_main 87 84 -3
sv_main 1183 1180 -3
sort_main 804 801 -3
run_applet_no_and_exit 440 437 -3
puts_maybe_newline 198 195 -3
nohup_main 228 225 -3
httpd_main 753 750 -3
get_header_tar 1496 1493 -3
fsck_minix_main 2972 2969 -3
expr_main 110 107 -3
cmp_main 641 638 -3
chat_main 1359 1356 -3
builtin_exit 48 45 -3
arping_main 1587 1584 -3
BB_EXECVP_or_die 47 44 -3
send_cgi_and_exit 901 895 -6
diff_main 1197 1191 -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/18 up/down: 9/-60) Total: -51 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 16:04:24 +02:00
Denys Vlasenko
6f80fe71f0
uudecode,base64: code shrink
...
function old new delta
read_base64 373 358 -15
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 13:24:05 +02:00
Denys Vlasenko
0004e99493
better shared strings trick
...
text data bss dec hex filename
861980 441 7540 869961 d4649 busybox_old
861914 441 7540 869895 d4607 busybox_unstripped
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 12:01:17 +02:00
Denys Vlasenko
9dc04124d5
getty: small code shrink
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 11:31:43 +02:00
Denys Vlasenko
a61ff51b49
find: add rudimentary support for -exec {} +
...
function old new delta
parse_params 1421 1414 -7
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-31 19:17:42 +02:00
Denys Vlasenko
ee06264a29
base64: new applet
...
function old new delta
base64_main - 217 +217
packed_usage 27181 27229 +48
read_base64 348 373 +25
applet_names 2299 2306 +7
bbconfig_config_bz2 4942 4948 +6
applet_main 1352 1356 +4
applet_nameofs 676 678 +2
applet_install_loc 169 170 +1
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 7/0 up/down: 310/0) Total: 310 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-31 14:09:22 +02:00
Denys Vlasenko
8d3e225a2d
libbb: add xfstat function
...
function old new delta
xfstat - 25 +25
mkfs_ext2_main 2421 2423 +2
mkfs_reiser_main 1197 1194 -3
next 312 307 -5
ar_main 533 522 -11
mkfs_minix_main 2938 2924 -14
mkfs_vfat_main 1511 1495 -16
writeTarFile 272 255 -17
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/6 up/down: 27/-66) Total: -39 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-31 12:42:06 +02:00
Denys Vlasenko
4e7dd3c363
mkswap: clear 1st kilobyte. Closes bug 1831
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-31 01:50:03 +02:00
Denys Vlasenko
c71ec70616
iplink: another compat #ifndef/#define tweak
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-30 19:20:09 +02:00
Denys Vlasenko
0ff78a0166
ash: small code shrink (-21 bytes)
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-30 15:20:07 +02:00
Denys Vlasenko
f7a8433535
ash: add another ${v/a/b} test we currently fail
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-30 13:54:12 +02:00
Denys Vlasenko
25b4755302
typo fix in comment
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-30 01:19:47 +02:00
Denys Vlasenko
d493e9361f
remove stray debugging stuff
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 14:39:45 +02:00
Denys Vlasenko
9ce07e778f
bbconfig: add COMPRESS_BBCONFIG option
...
function old new delta
bbconfig_config_bz2 - 4905 +4905
bbconfig_main 13 70 +57
bbconfig_config 21811 - -21811
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 1/0 up/down: 4962/-21811) Total: -16849 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 14:36:11 +02:00
Baruch Siach
7715b48c36
nandwrite: always check the first erase block
...
Current code does not check the first erase block when mtdoffset is not erase
block aligned. Fix this.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 13:30:22 +02:00
Denys Vlasenko
b32a543663
nandwrite: complain on malformed -s NUM
...
Elsewhere: use common error message. -30 bytes net size change
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 13:29:02 +02:00
Baruch Siach
a78227dc73
nandwrite: allow hex values in the -s parameter
...
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 13:15:57 +02:00
Denys Vlasenko
cc131534e2
showkey: code shrink
...
function old new delta
signal_handler 52 45 -7
showkey_main 461 454 -7
xset1 40 29 -11
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 05:00:40 +02:00