aboutsummaryrefslogtreecommitdiff
path: root/coreutils/ls.c
AgeCommit message (Collapse)Author
2010-01-31ls: unicode fixesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-24randomconfig fixesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-24libbb: better unicode width support. Hopefully fixes bug 839.Denys Vlasenko
Also opens up a possibility to make other unicode stuff smaller and more correct later. but: function old new delta static.combining - 516 +516 bb_wcwidth - 328 +328 unicode_cut_nchars - 141 +141 mbstowc_internal - 93 +93 in_table - 78 +78 cal_main 899 961 +62 static.combining0x10000 - 40 +40 unicode_strlen - 31 +31 bb_mbstrlen 31 - -31 bb_mbstowcs 173 102 -71 ------------------------------------------------------------------------------ (add/remove: 7/1 grow/shrink: 1/1 up/down: 1289/-102) Total: 1187 bytes Uses code of Markus Kuhn, which is in public domain: http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c "Permission to use, copy, modify, and distribute this software for any purpose and without fee is hereby granted. The author disclaims all warranties with regard to this software." Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-18ls: fix sort of very large files. +21 byteDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-18ls: make it so that group never glues itself to file sizeDenys Vlasenko
+ smaller enhancements: inode is long long; -h is a bit narrower; etc Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-04fold: unicode support. Based on a patch by Tomas Heinrich ↵Denys Vlasenko
<heinrich.tomas@gmail.com> General Unicode support is tweaked to expose unicode_status. function old new delta init_unicode - 77 +77 write2stdout - 19 +19 adjust_column 68 71 +3 unicode_status - 1 +1 unicode_is_enabled 1 - -1 grep_main 780 773 -7 fold_main 619 552 -67 check_unicode_in_env 77 - -77 ------------------------------------------------------------------------------ (add/remove: 3/2 grow/shrink: 1/2 up/down: 100/-152) Total: -52 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-23ls: fix "ls | cat" to not show "total NNN" headerDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-13libbb/human_readable.c: shrink; and reduce bss usageDenys Vlasenko
also, move smart_ulltoaN there and comment usage locations function old new delta static.unit_chars 7 9 +2 utoa_to_buf 110 108 -2 make_human_readable_str 262 258 -4 fallbackSort 1723 1719 -4 static.fmt 97 92 -5 static.fmt_tenths 10 - -10 static.str 21 4 -17 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 1/5 up/down: 2/-42) Total: -40 bytes text data bss dec hex filename 820981 453 6932 828366 ca3ce busybox_old 820968 453 6916 828337 ca3b1 busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03ls: forgotten chunk from prev commitDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03ls: code shrinkDenys Vlasenko
function old new delta count_dirs 81 86 +5 dnalloc 13 17 +4 showfiles 372 370 -2 ls_main 833 825 -8 showdirs 505 489 -16 splitdnarray 189 120 -69 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/4 up/down: 9/-95) Total: -86 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03ls: fix for !FEATURE_LS_RECURSIVE (forgotten free); cleanupsDenys Vlasenko
no code changes if FEATURE_LS_RECURSIVE Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03ls: add standards doc; record author of "total NNNN" codeDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03ls: code shrinkDenys Vlasenko
function old new delta list_single - 1006 +1006 print_name 211 209 -2 dnalloc 15 13 -2 splitdnarray 192 189 -3 ls_main 848 833 -15 showdirs 564 505 -59 showfiles 1460 372 -1088 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/6 up/down: 1006/-1169) Total: -163 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03ls: add "total NNNN" header if DESKTOP. By Johannes Stezenbach (js AT sig21.net)Denys Vlasenko
function old new delta showdirs 492 564 +72 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-30find: add zeroing of G.xxx; ftpd - remove extraneous zeroing of G.xxxDenys Vlasenko
Brought "G trick" to the same shape in a few more places. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-11tweaking Unicode supportDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-11added simplified Unicode support for non-locale-enabled buildsDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-03ls: make --color more compatible with coreutilsDenys Vlasenko
function old new delta static.color_str - 34 +34 static.ls_longopts - 9 +9 ls_color_opt 9 - -9 ls_main 865 843 -22 ------------------------------------------------------------------------------ (add/remove: 2/1 grow/shrink: 0/1 up/down: 43/-31) Total: 12 bytes text data bss dec hex filename 820145 450 7692 828287 ca37f busybox_old 820144 450 7692 828286 ca37e busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-02ls: fix --color handling. Closes bug 435.Denys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-04-21*: mass renaming of USE_XXXX to IF_XXXXDenis Vlasenko
and SKIP_XXXX to IF_NOT_XXXX - the second one was especially badly named. It was not skipping anything!
2009-03-27ls: warning fixDenis Vlasenko
rm: accept and ignore -v (verbose)
2009-03-21ls: make readlink error to not disrupt output (try ls -l /proc/self/fd).Denis Vlasenko
libbb: make xmalloc_readlink_or_warn warning more specific. function old new delta xmalloc_readlink_or_warn 33 61 +28 showfiles 1495 1460 -35 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/1 up/down: 28/-35) Total: -7 bytes
2009-03-18ls: make color-related code more readable. Fix a case whenDenis Vlasenko
it was working non-deterministically. function old new delta bold - 34 +34 showfiles 1508 1495 -13 fgcolor 50 34 -16 bgcolor 34 - -34 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 0/2 up/down: 34/-63) Total: -29 bytes
2009-03-09ftpd + ls - timestamp = confused Mozilla. Prevent that.Denis Vlasenko
2009-03-09ftpd: reuse ls applet for LIST/NLST/STAT generationDenis Vlasenko
function old new delta popen_ls - 211 +211 ftpd_main 1760 1826 +66 handle_dir_common 199 228 +29 get_remote_transfer_fd 89 104 +15 replace_char 30 34 +4 handle_upload_common 263 265 +2 bind_for_passive_mode 129 121 -8 cmdio_write 84 62 -22 escape_text 166 136 -30 init_data_sock_params 81 - -81 ftpdataio_dispose_transfer_fd 87 - -87 write_dirstats 149 - -149 write_filestats 603 - -603 ------------------------------------------------------------------------------ (add/remove: 1/4 grow/shrink: 11/5 up/down: 384/-986) Total: -602 bytes text data bss dec hex filename 808804 476 7864 817144 c77f8 busybox_old 808156 476 7864 816496 c7570 busybox_unstripped
2009-03-08ftpd: code chrink, fixed some minor bugsDenis Vlasenko
ls: update comment *: openlog fixes (added LOG_PID, set LOG_DAEMON as appropriate) function old new delta xwrite_str - 26 +26 cmdio_write_ok - 15 +15 handle_cwd 40 45 +5 packed_usage 25668 25670 +2 cmdio_write_raw 7 9 +2 handle_upload_common 322 320 -2 udhcpd_main 1375 1372 -3 udhcpc_main 2362 2359 -3 port_cleanup 27 23 -4 handle_dir_common 221 209 -12 str_netfd_write 26 - -26 cmdio_get_cmd_and_arg 122 - -122 ftpd_main 2208 2050 -158 ------------------------------------------------------------------------------ text data bss dec hex filename 809933 476 7864 818273 c7c61 busybox_old 809199 476 7864 817539 c7983 busybox_unstripped
2009-03-03ls: implement -Q and -g (-g was accepted but ignored)Denis Vlasenko
function old new delta print_name - 198 +198 showfiles 1489 1508 +19 ls_options 30 31 +1 opt_flags 112 108 -4 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/1 up/down: 218/-4) Total: 214 bytes
2009-03-03ls: do not follow links with -s (closes bug 33),Denis Vlasenko
display unsigned data with %XXu, not %XXd.
2008-07-15ls: fix a bug where we may use uninintialized variableDenis Vlasenko
2008-07-05*: rename ATTRIBUTE_XXX to just XXX.Denis Vlasenko
2008-06-25whitespace fixes. no code changesDenis Vlasenko
2008-06-23fix breakage found by randomconfigDenis Vlasenko
2008-06-18fix trivial error with inverted exit code in lsDenis Vlasenko
2008-06-13build system: introduce FEATURE_ASSUME_UNICODEDenis Vlasenko
ls: use it. also do G trick. with UNICODE off: function old new delta ls_main 843 871 +28 show_color 1 - -1 showdirs 500 497 -3 my_stat 100 97 -3 terminal_width 4 - -4 tabstops 4 - -4 status 122 118 -4 static.dotdir 4 - -4 current_time_t 4 - -4 all_fmt 4 - -4 ------------------------------------------------------------------------------ (add/remove: 0/6 grow/shrink: 1/3 up/down: 28/-31) Total: -3 bytes Also was tested with UNICODE on with glibc.
2008-03-23patch: shrink by Pascal Bellard <pascal.bellard AT ads-lu.com> (-80 bytes)Denis Vlasenko
*: removal of #include <getopt.h>
2008-03-17*: shrink: use Vladimir's "o+" specifier instead of xatou(opt_param)Denis Vlasenko
function old new delta getopt32 1370 1385 +15 sulogin_main 490 494 +4 realpath_main 84 86 +2 sleep_main 76 77 +1 mt_main 256 257 +1 printenv_main 75 74 -1 fdformat_main 546 545 -1 usleep_main 44 42 -2 setlogcons_main 77 75 -2 ed_main 2654 2649 -5 deallocvt_main 69 64 -5 addgroup_main 373 368 -5 mkfs_minix_main 2989 2982 -7 tail_main 1221 1213 -8 sv_main 1254 1241 -13 du_main 348 328 -20 tftp_main 325 302 -23 split_main 581 558 -23 nc_main 1000 977 -23 diff_main 891 868 -23 arping_main 1797 1770 -27 ls_main 893 847 -46 od_main 2797 2750 -47 readprofile_main 1944 1895 -49 tcpudpsvd_main 1973 1922 -51 udhcpc_main 2590 2513 -77 grep_main 824 722 -102 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 5/22 up/down: 23/-560) Total: -537 bytes text data bss dec hex filename 796973 658 7428 805059 c48c3 busybox_old 796479 662 7420 804561 c46d1 busybox_unstripped
2007-10-11add -fvisibility=hidden to CC flags, mark XXX_main functionsDenis Vlasenko
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-01'simple' error message functions by Loic Grenie <loic.grenie@gmail.com>.Denis Vlasenko
263 bytes saved.
2007-09-27introduce bb_putchar(). saves ~1800 on uclibc (less on glibc).Denis Vlasenko
2007-08-18don't pass argc in getopt32, it's superfluousDenis Vlasenko
(add/remove: 0/0 grow/shrink: 12/131 up/down: 91/-727) Total: -636 bytes text data bss dec hex filename 773469 1058 11092 785619 bfcd3 busybox_old 772644 1058 11092 784794 bf99a busybox_unstripped
2007-08-12trylink: produce even more info about final link stageDenis Vlasenko
trylink: explain how to modify link and drastically decrease amount of padding (unfortunately, needs hand editing ATM). *: add ALIGN1 / ALIGN2 to global strings and arrays of bytes and shorts size saving: 0.5k
2007-08-09ls,ps,watch: measure terminal width on fd 0, not 1Denis Vlasenko
2007-07-24Replace index_in_[sub]str_array with index_in_[sub]strings,Denis Vlasenko
which scans thru "abc\0def\0123\0\0" type strings. Saves 250 bytes. text data bss dec hex filename 781266 1328 11844 794438 c1f46 busybox_old 781010 1328 11844 794182 c1e46 busybox_unstripped
2007-07-23rework long option handling. saves ~1.2kDenis Vlasenko
function old new delta tar_longopts - 222 +222 static.udhcpc_longopts - 192 +192 start_stop_daemon_longopts - 150 +150 getopt32 1045 1185 +140 static.wget_longopts - 111 +111 static.od_longopts - 105 +105 getopt_longopts - 96 +96 install_longopts - 67 +67 ipcalc_longopts - 63 +63 static.hwclock_longopts - 54 +54 ftpgetput_longopts - 52 +52 static.dumpleases_longopts - 32 +32 env_longopts - 31 +31 runparts_longopts - 30 +30 mv_longopts - 24 +24 mkdir_longopts - 19 +19 find_pair 164 180 +16 bb_null_long_options - 16 +16 setconsole_longopts - 10 +10 display_speed 91 98 +7 collect_blk 467 474 +7 show_color 4 1 -3 ls_main 913 904 -9 bb_default_long_options 16 - -16 ls_color_opt 32 10 -22 setconsole_long_options 32 - -32 arith 2077 2030 -47 mv_long_options 48 - -48 mkdir_long_options 48 - -48 env_long_options 48 - -48 static.options 248 184 -64 runparts_long_options 80 - -80 ftpgetput_long_options 96 - -96 static.hwclock_long_options 112 - -112 install_long_options 112 - -112 static.long_options 144 - -144 static.wget_long_options 160 - -160 longopts 160 - -160 static.arg_options 304 - -304 tar_long_options 320 - -320 long_options 384 - -384 ------------------------------------------------------------------------------ (add/remove: 17/15 grow/shrink: 4/5 up/down: 1444/-2209) Total: -765 bytes text data bss dec hex filename 782618 1328 11900 795846 c24c6 busybox_old 781354 1328 11900 794582 c1fd6 busybox_unstripped
2007-06-30introduce and use bb_basename()Denis Vlasenko
function old new delta bb_basename - 26 +26 sv_main 1226 1225 -1 passwd_main 1985 1983 -2 showdirs 482 478 -4 sendCgi 1811 1807 -4 make_device 1354 1350 -4 handleIncoming 2443 2439 -4 func_name 82 78 -4 service_name 2292 2285 -7 main 909 901 -8 cmp_main 555 547 -8 test_main 434 422 -12 act 228 216 -12 find_pair 180 164 -16 rmmod_main 298 280 -18 find_pid_by_name 156 134 -22 modprobe_main 1606 1576 -30 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/16 up/down: 26/-156) Total: -130 bytes text data bss dec hex filename 734933 3028 14400 752361 b7ae9 busybox_old 734801 3028 14400 752229 b7a65 busybox_unstripped
2007-05-26usage.c: remove reference to busybox.hDenis Vlasenko
*: s/include "busybox.h"/include "libbb.h"
2007-04-13teach find_root_device to deal with /dev/ subdirsDenis Vlasenko
(by "Kirill K. Smirnov" <lich@math.spbu.ru>)
2007-04-10audit small applets and mark some of them as NOFORK.Denis Vlasenko
Put big scary warnings in relevant places.
2007-03-20fix accumulated whitespace and indentation damageDenis Vlasenko
2007-03-19ls: fix segfault-if-standalone-shell, add big fat comment.Denis Vlasenko