ls: convert DISP_DIRNAME to a bool variable

function                                             old     new   delta
ls_main                                              553     548      -5

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2017-01-23 20:46:12 +01:00
parent ccc1699e3e
commit 9a64c3337c

View File

@ -192,10 +192,6 @@ TERMINAL_WIDTH = 80, /* use 79 if terminal has linefold bug */
SPLIT_FILE = 0, SPLIT_FILE = 0,
SPLIT_DIR = 1, SPLIT_DIR = 1,
SPLIT_SUBDIR = 2, SPLIT_SUBDIR = 2,
/* Bits in G.all_fmt: */
/* what files will be displayed */
DISP_DIRNAME = 1 << 9, /* 2 or more items? label directories */
}; };
/* -Cadi1l Std options, busybox always supports */ /* -Cadi1l Std options, busybox always supports */
@ -330,7 +326,7 @@ struct globals {
# define G_show_color 0 # define G_show_color 0
#endif #endif
smallint exit_code; smallint exit_code;
unsigned all_fmt; smallint show_dirname;
#if ENABLE_FEATURE_LS_WIDTH #if ENABLE_FEATURE_LS_WIDTH
unsigned terminal_width; unsigned terminal_width;
# define G_terminal_width (G.terminal_width) # define G_terminal_width (G.terminal_width)
@ -1010,9 +1006,7 @@ static void scan_and_display_dirs_recur(struct dnode **dn, int first)
struct dnode **subdnp; struct dnode **subdnp;
for (; *dn; dn++) { for (; *dn; dn++) {
if ((G.all_fmt & DISP_DIRNAME) if (G.show_dirname || (option_mask32 & OPT_R)) {
|| (option_mask32 & OPT_R)
) {
if (!first) if (!first)
bb_putchar('\n'); bb_putchar('\n');
first = 0; first = 0;
@ -1186,7 +1180,7 @@ int ls_main(int argc UNUSED_PARAM, char **argv)
*--argv = (char*)"."; *--argv = (char*)".";
if (argv[1]) if (argv[1])
G.all_fmt |= DISP_DIRNAME; /* 2 or more items? label directories */ G.show_dirname = 1; /* 2 or more items? label directories */
/* stuff the command line file names into a dnode array */ /* stuff the command line file names into a dnode array */
dn = NULL; dn = NULL;