From 53f17912120e2f8732443fbb91fcf2c87123eaa5 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 5 Jun 2009 14:55:26 +0200 Subject: [PATCH] *: reduce #ifdef forest Remove unnecessary #if statements from the "more", "script", and "scriptreplay" commands. Bloatcheck says 0 bytes changed. Signed-off-by: Rob Landley Signed-off-by: Denys Vlasenko --- util-linux/more.c | 54 ++++++++++++++++++--------------------- util-linux/script.c | 20 +++++---------- util-linux/scriptreplay.c | 8 +++--- 3 files changed, 35 insertions(+), 47 deletions(-) diff --git a/util-linux/more.c b/util-linux/more.c index b0f20c441..9ac4dd8e3 100644 --- a/util-linux/more.c +++ b/util-linux/more.c @@ -16,7 +16,7 @@ #include "libbb.h" -#if ENABLE_FEATURE_USE_TERMIOS +/* Support for FEATURE_USE_TERMIOS */ struct globals { int cin_fileno; @@ -29,7 +29,9 @@ struct globals { #define new_settings (G.new_settings ) #define cin_fileno (G.cin_fileno ) -#define setTermSettings(fd, argp) tcsetattr(fd, TCSANOW, argp) +#define setTermSettings(fd, argp) do { \ + if (ENABLE_FEATURE_USE_TERMIOS) tcsetattr(fd, TCSANOW, argp); \ + } while(0) #define getTermSettings(fd, argp) tcgetattr(fd, argp) static void gotsig(int sig UNUSED_PARAM) @@ -39,11 +41,6 @@ static void gotsig(int sig UNUSED_PARAM) exit(EXIT_FAILURE); } -#else /* !FEATURE_USE_TERMIOS */ -#define INIT_G() ((void)0) -#define setTermSettings(fd, argp) ((void)0) -#endif /* FEATURE_USE_TERMIOS */ - #define CONVERTED_TAB_SIZE 8 int more_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; @@ -72,21 +69,21 @@ int more_main(int argc UNUSED_PARAM, char **argv) if (!cin) return bb_cat(argv); -#if ENABLE_FEATURE_USE_TERMIOS - cin_fileno = fileno(cin); - getTermSettings(cin_fileno, &initial_settings); - new_settings = initial_settings; - new_settings.c_lflag &= ~ICANON; - new_settings.c_lflag &= ~ECHO; - new_settings.c_cc[VMIN] = 1; - new_settings.c_cc[VTIME] = 0; - setTermSettings(cin_fileno, &new_settings); - bb_signals(0 - + (1 << SIGINT) - + (1 << SIGQUIT) - + (1 << SIGTERM) - , gotsig); -#endif + if (ENABLE_FEATURE_USE_TERMIOS) { + cin_fileno = fileno(cin); + getTermSettings(cin_fileno, &initial_settings); + new_settings = initial_settings; + new_settings.c_lflag &= ~ICANON; + new_settings.c_lflag &= ~ECHO; + new_settings.c_cc[VMIN] = 1; + new_settings.c_cc[VTIME] = 0; + setTermSettings(cin_fileno, &new_settings); + bb_signals(0 + + (1 << SIGINT) + + (1 << SIGQUIT) + + (1 << SIGTERM) + , gotsig); + } do { file = stdin; @@ -126,9 +123,8 @@ int more_main(int argc UNUSED_PARAM, char **argv) for (;;) { input = getc(cin); input = tolower(input); -#if !ENABLE_FEATURE_USE_TERMIOS - printf("\033[A"); /* up cursor */ -#endif + if (!ENABLE_FEATURE_USE_TERMIOS) + printf("\033[A"); /* cursor up */ /* Erase the last message */ printf("\r%*s\r", len, ""); @@ -150,10 +146,10 @@ int more_main(int argc UNUSED_PARAM, char **argv) /* The user may have resized the terminal. * Re-read the dimensions. */ -#if ENABLE_FEATURE_USE_TERMIOS - get_terminal_width_height(cin_fileno, &terminal_width, &terminal_height); - terminal_height -= 1; -#endif + if (ENABLE_FEATURE_USE_TERMIOS) { + get_terminal_width_height(cin_fileno, &terminal_width, &terminal_height); + terminal_height -= 1; + } } /* Crudely convert tabs into spaces, which are diff --git a/util-linux/script.c b/util-linux/script.c index d16a2914a..4e0deb4ef 100644 --- a/util-linux/script.c +++ b/util-linux/script.c @@ -33,24 +33,20 @@ int script_main(int argc UNUSED_PARAM, char **argv) OPT_c = (1 << 1), OPT_f = (1 << 2), OPT_q = (1 << 3), -#if ENABLE_SCRIPTREPLAY OPT_t = (1 << 4), -#endif }; -#if ENABLE_GETOPT_LONG static const char getopt_longopts[] ALIGN1 = "append\0" No_argument "a" "command\0" Required_argument "c" "flush\0" No_argument "f" "quiet\0" No_argument "q" -# if ENABLE_SCRIPTREPLAY - "timing\0" No_argument "t" -# endif + IF_SCRIPTREPLAY("timing\0" No_argument "t") ; - applet_long_options = getopt_longopts; -#endif + if (ENABLE_GETOPT_LONG) + applet_long_options = getopt_longopts; + opt_complementary = "?1"; /* max one arg */ opt = getopt32(argv, "ac:fq" IF_SCRIPTREPLAY("t") , &shell_arg); //argc -= optind; @@ -101,9 +97,7 @@ int script_main(int argc UNUSED_PARAM, char **argv) #define buf bb_common_bufsiz1 struct pollfd pfd[2]; int outfd, count, loop; -#if ENABLE_SCRIPTREPLAY - double oldtime = time(NULL); -#endif + double oldtime = ENABLE_SCRIPTREPLAY ? time(NULL) : 0; smallint fd_count = 2; outfd = xopen(fname, mode); @@ -132,8 +126,7 @@ int script_main(int argc UNUSED_PARAM, char **argv) goto restore; } if (count > 0) { -#if ENABLE_SCRIPTREPLAY - if (opt & OPT_t) { + if (ENABLE_SCRIPTREPLAY && (opt & OPT_t)) { struct timeval tv; double newtime; @@ -142,7 +135,6 @@ int script_main(int argc UNUSED_PARAM, char **argv) fprintf(stderr, "%f %u\n", newtime - oldtime, count); oldtime = newtime; } -#endif full_write(STDOUT_FILENO, buf, count); full_write(outfd, buf, count); if (opt & OPT_f) { diff --git a/util-linux/scriptreplay.c b/util-linux/scriptreplay.c index 038dbdfe1..6474d38e8 100644 --- a/util-linux/scriptreplay.c +++ b/util-linux/scriptreplay.c @@ -30,9 +30,9 @@ int scriptreplay_main(int argc UNUSED_PARAM, char **argv) usleep(delay * factor); bb_copyfd_exact_size(fd, STDOUT_FILENO, count); } -#if ENABLE_FEATURE_CLEAN_UP - close(fd); - fclose(tfp); -#endif + if (ENABLE_FEATURE_CLEAN_UP) { + close(fd); + fclose(tfp); + } return EXIT_SUCCESS; }