]> git.ipfire.org Git - thirdparty/shadow.git/commitdiff
lib/getrange.c: getrange(): Return early to reduce indentation
authorAlejandro Colomar <alx@kernel.org>
Mon, 15 Apr 2024 09:52:43 +0000 (11:52 +0200)
committerSerge Hallyn <serge@hallyn.com>
Sat, 4 May 2024 22:22:57 +0000 (17:22 -0500)
Signed-off-by: Alejandro Colomar <alx@kernel.org>
lib/getrange.c

index 389f904262fa1a651b40ecd8005c7460adbfc7a6..0410cb81f4467e95ca55383b37ff1848965e0d35 100644 (file)
@@ -48,38 +48,38 @@ getrange(const char *range,
                        return -1;
                *has_max = true;
 
-               /* -<long> */
-       } else {
-               errno = 0;
-               *min = strtoul_noneg(range, &endptr, 10);
-               if (endptr == range || 0 != errno)
+               return 0;  /* -<long> */
+       }
+
+       errno = 0;
+       *min = strtoul_noneg(range, &endptr, 10);
+       if (endptr == range || 0 != errno)
+               return -1;
+       *has_min = true;
+
+       switch (*endptr) {
+       case '\0':
+               /* <long> */
+               *has_max = true;
+               *max = *min;
+               break;
+       case '-':
+               endptr++;
+               if ('\0' == *endptr)
+                       return 0;  /* <long>- */
+               if (!isdigit(*endptr))
                        return -1;
-               *has_min = true;
-
-               switch (*endptr) {
-               case '\0':
-                       /* <long> */
-                       *has_max = true;
-                       *max = *min;
-                       break;
-               case '-':
-                       endptr++;
-                       if ('\0' == *endptr)
-                               return 0;  /* <long>- */
-                       if (!isdigit(*endptr))
-                               return -1;
-
-                       errno = 0;
-                       *max = strtoul_noneg(endptr, &endptr, 10);
-                       if ('\0' != *endptr || 0 != errno)
-                               return -1;
-                       *has_max = true;
-
-                       /* <long>-<long> */
-                       break;
-               default:
+
+               errno = 0;
+               *max = strtoul_noneg(endptr, &endptr, 10);
+               if ('\0' != *endptr || 0 != errno)
                        return -1;
-               }
+               *has_max = true;
+
+               /* <long>-<long> */
+               break;
+       default:
+               return -1;
        }
 
        return 0;