]> git.refcnt.org Git - colorize.git/blobdiff - colorize.c
Eliminate goto
[colorize.git] / colorize.c
index a891135fdd4772710481ff8607f9d7782cee7ff6..06f448b15e8b7f20734c134d6e3ede2e077ff7cb 100644 (file)
@@ -339,10 +339,13 @@ main (int argc, char **argv)
     exit (EXIT_SUCCESS);
 }
 
-#define SET_OPT_TYPE(type) \
-    opt_type = type;       \
-    opt = 0;               \
-    goto PARSE_OPT;        \
+#define PRINT_HELP_EXIT() \
+    print_help ();        \
+    exit (EXIT_SUCCESS);  \
+
+#define PRINT_VERSION_EXIT() \
+    print_version ();        \
+    exit (EXIT_SUCCESS);     \
 
 extern char *optarg;
 
@@ -352,7 +355,6 @@ process_opts (int argc, char **argv)
     int opt;
     while ((opt = getopt_long (argc, argv, "hV", long_opts, NULL)) != -1)
       {
-        PARSE_OPT:
         switch (opt)
           {
             case 0: /* long opts */
@@ -383,19 +385,17 @@ process_opts (int argc, char **argv)
                     break;
                   }
                   case OPT_HELP:
-                    print_help ();
-                    exit (EXIT_SUCCESS);
+                    PRINT_HELP_EXIT ();
                   case OPT_VERSION:
-                    print_version ();
-                    exit (EXIT_SUCCESS);
+                    PRINT_VERSION_EXIT ();
                   default: /* never reached */
                     ABORT_TRACE ();
                 }
               break;
             case 'h':
-              SET_OPT_TYPE (OPT_HELP);
+              PRINT_HELP_EXIT ();
             case 'V':
-              SET_OPT_TYPE (OPT_VERSION);
+              PRINT_VERSION_EXIT ();
             case '?':
               print_hint ();
               exit (EXIT_FAILURE);
@@ -554,7 +554,7 @@ process_args (unsigned int arg_cnt, char **arg_strings, bool *bold, const struct
         if (file_string)
           vfprintf_fail (formats[FMT_GENERIC], "hyphen cannot be used as color string");
         else
-          vfprintf_fail (formats[FMT_GENERIC], "hyphen must be preceeded by color string");
+          vfprintf_fail (formats[FMT_GENERIC], "hyphen must be preceded by color string");
       }
 
     ret = lstat (color_string, &sb);
@@ -684,7 +684,7 @@ skip_path_colors (const char *color_string, const char *file_string, const struc
         else
           {
             if (VALID_FILE_TYPE (mode))
-              vfprintf_fail (formats[FMT_QUOTE], get_file_type (mode), file_exists, "must be preceeded by color string");
+              vfprintf_fail (formats[FMT_QUOTE], get_file_type (mode), file_exists, "must be preceded by color string");
             else
               vfprintf_fail (formats[FMT_QUOTE], get_file_type (mode), file_exists, "is not a valid file type");
           }