]> git.sur5r.net Git - i3/i3status/blobdiff - src/print_eth_info.c
Merge pull request #301 from wmarvel/issue300
[i3/i3status] / src / print_eth_info.c
index b30d2b0166a0b1fd577c047eb4bf8a01f3bc4cbb..2fc25a180b30f5134b23064049335054fd0ed9e5 100644 (file)
@@ -33,7 +33,6 @@
 
 static int print_eth_speed(char *outwalk, const char *interface) {
 #if defined(LINUX)
-    /* This code path requires root privileges */
     int ethspeed = 0;
     struct ifreq ifr;
     struct ethtool_cmd ecmd;
@@ -176,15 +175,17 @@ void print_eth_info(yajl_gen json_gen, char *buffer, const char *interface, cons
     for (walk = format_up; *walk != '\0'; walk++) {
         if (*walk != '%') {
             *(outwalk++) = *walk;
-            continue;
-        }
 
-        if (BEGINS_WITH(walk + 1, "ip")) {
+        } else if (BEGINS_WITH(walk + 1, "ip")) {
             outwalk += sprintf(outwalk, "%s", ip_address);
             walk += strlen("ip");
+
         } else if (BEGINS_WITH(walk + 1, "speed")) {
             outwalk += print_eth_speed(outwalk, interface);
             walk += strlen("speed");
+
+        } else {
+            *(outwalk++) = '%';
         }
     }