]> ruderich.org/simon Gitweb - socket2unix/socket2unix.git/commitdiff
get_options(): change loop style
authorHans Spath <xe54bibi@cip.cs.fau.de>
Thu, 5 Dec 2013 01:44:55 +0000 (02:44 +0100)
committerSimon Ruderich <simon@ruderich.org>
Thu, 5 Dec 2013 01:48:13 +0000 (02:48 +0100)
src/socket2unix.c

index 12f03f56dd2654ed8fe767b17101f8b8110422c5..693892d5c44c8190c2f5b39b38e0e89ef1cdf4d4 100644 (file)
@@ -230,22 +230,24 @@ static int get_log_level(void) {
     return number;
 }
 static int get_options(void) {
-    const char *pos = getenv("SOCKET2UNIX_OPTIONS");
-    if (!pos) {
+    const char *start = getenv("SOCKET2UNIX_OPTIONS");
+    if (!start) {
         return OPTION_PARSED;
     }
 
     int options = OPTION_PARSED;
 
-    while (*pos != '\0') {
+    const char *end = start + strlen(start);
+    const char *pos, *curend;
+
+    for (pos = start; pos < end; pos = curend + 1) {
         size_t length;
 
-        const char *end = strchr(pos, ',');
-        if (end == NULL) {
-            length = strlen(pos);
-        } else {
-            length = (size_t)(end - pos);
+        curend = strchr(pos, ',');
+        if (curend == NULL) {
+            curend = end;
         }
+        length = (size_t)(curend - pos);
 
         if (!strncmp("client_only", pos, length)) {
             options |= OPTION_CLIENT_ONLY;
@@ -258,11 +260,6 @@ static int get_options(void) {
             ERROR("unknown option '%s' in SOCKET2UNIX_OPTIONS\n",
                   option);
         }
-
-        if (end == NULL) {
-            break;
-        }
-        pos = end + 1;
     }
 
     if ((options & OPTION_CLIENT_ONLY) && (options & OPTION_SERVER_ONLY)) {