define option names to be clearer, simplify nested if statements, remove
authorGlenn L McGrath <bug1@ihug.co.nz>
Tue, 17 Feb 2004 07:51:31 +0000 (07:51 -0000)
committerGlenn L McGrath <bug1@ihug.co.nz>
Tue, 17 Feb 2004 07:51:31 +0000 (07:51 -0000)
un-needed if statement, minor indenting change

coreutils/date.c

index 7d14ec3..46d2e10 100644 (file)
@@ -114,6 +114,11 @@ static struct tm *date_conv_ftime(struct tm *tm_time, const char *t_string)
        return (tm_time);
 }
 
+#define DATE_OPT_RFC2822       0x01
+#define DATE_OPT_SET           0x02
+#define DATE_OPT_UTC           0x04
+#define DATE_OPT_DATE          0x08
+#define DATE_OPT_REFERENCE     0x10
 
 int date_main(int argc, char **argv)
 {
@@ -121,7 +126,6 @@ int date_main(int argc, char **argv)
        char *date_fmt = NULL;
        char *t_buff;
        int set_time;
-       int rfc822;
        int utc;
        int use_arg = 0;
        time_t tm;
@@ -143,37 +147,35 @@ int date_main(int argc, char **argv)
                                        , &isofmt_arg
 #endif
                                        );
-       rfc822 = opt & 1;
-       set_time = opt & 2;
-       utc = opt & 4;
-       if(utc) {
-                       if (putenv("TZ=UTC0") != 0)
-                               bb_error_msg_and_die(bb_msg_memory_exhausted);
+       set_time = opt & DATE_OPT_SET;
+       utc = opt & DATE_OPT_UTC;
+       if ((utc) && (putenv("TZ=UTC0") != 0)) {
+               bb_error_msg_and_die(bb_msg_memory_exhausted);
        }
-       use_arg = opt & 8;
+       use_arg = opt & DATE_OPT_DATE;
        if(opt & 0x80000000UL)
-                               bb_show_usage();
+               bb_show_usage();
 #ifdef CONFIG_FEATURE_DATE_ISOFMT
-       if(opt & 16) {
-               if (!isofmt_arg)
-                               ifmt = 1;
-                       else {
+       if(opt & DATE_OPT_REFERENCE) {
+               if (!isofmt_arg) {
+                       ifmt = 1;
+               } else {
                        int ifmt_len = bb_strlen(isofmt_arg);
 
-                               if ((ifmt_len <= 4)
+                       if ((ifmt_len <= 4)
                                && (strncmp(isofmt_arg, "date", ifmt_len) == 0)) {
-                                       ifmt = 1;
-                               } else if ((ifmt_len <= 5)
-                                          && (strncmp(isofmt_arg, "hours", ifmt_len) == 0)) {
-                                       ifmt = 2;
-                               } else if ((ifmt_len <= 7)
-                                          && (strncmp(isofmt_arg, "minutes", ifmt_len) == 0)) {
-                                       ifmt = 3;
-                               } else if ((ifmt_len <= 7)
-                                          && (strncmp(isofmt_arg, "seconds", ifmt_len) == 0)) {
-                                       ifmt = 4;
-                               }
+                               ifmt = 1;
+                       } else if ((ifmt_len <= 5)
+                                  && (strncmp(isofmt_arg, "hours", ifmt_len) == 0)) {
+                               ifmt = 2;
+                       } else if ((ifmt_len <= 7)
+                                  && (strncmp(isofmt_arg, "minutes", ifmt_len) == 0)) {
+                               ifmt = 3;
+                       } else if ((ifmt_len <= 7)
+                                  && (strncmp(isofmt_arg, "seconds", ifmt_len) == 0)) {
+                               ifmt = 4;
                        }
+               }
                if (!ifmt) {
                        bb_show_usage();
                }
@@ -197,11 +199,8 @@ int date_main(int argc, char **argv)
                tm_time.tm_sec = 0;
                tm_time.tm_min = 0;
                tm_time.tm_hour = 0;
-       }
-
-       /* Process any date input to UNIX time since 1 Jan 1970 */
-       if (date_str != NULL) {
 
+               /* Process any date input to UNIX time since 1 Jan 1970 */
                if (strchr(date_str, ':') != NULL) {
                        date_conv_ftime(&tm_time, date_str);
                } else {
@@ -246,7 +245,7 @@ int date_main(int argc, char **argv)
                default:
 #endif
                        date_fmt =
-                               (rfc822
+                               (opt & DATE_OPT_RFC2822
                                 ? (utc ? "%a, %e %b %Y %H:%M:%S GMT" :
                                        "%a, %e %b %Y %H:%M:%S %z") : "%a %b %e %H:%M:%S %Z %Y");