don't allow the use of perc if uninitialized
authorraiz <raiz@firemail.cc>
Tue, 27 Dec 2016 17:09:07 +0000 (20:09 +0300)
committerraiz <raiz@firemail.cc>
Tue, 27 Dec 2016 17:09:07 +0000 (20:09 +0300)
slstatus.c

index ad0b960d960a4e741cabb5102b5dbb2f0c2923f8..7b022053fd698e65408ed1d07b3e1086dde35dde 100644 (file)
@@ -699,11 +699,11 @@ wifi_perc(const char *iface)
        fgets(buf, sizeof(buf), fp);
        fclose(fp);
 
-       datastart = strstr(buf, concat);
-       if (datastart != NULL) {
-               datastart = strstr(buf, ":");
-               sscanf(datastart + 1, " %*d   %d  %*d  %*d                %*d      %*d          %*d              %*d      %*d            %*d", &perc);
+       if ((datastart = strstr(buf, concat)) == NULL) {
+               return smprintf("%s", UNKNOWN_STR);
        }
+       datastart = (datastart+(strlen(iface)+1));
+       sscanf(datastart + 1, " %*d   %d  %*d  %*d                %*d      %*d          %*d              %*d      %*d            %*d", &perc);
 
        return smprintf("%d%%", perc);
 }