Xinqi Bao's Git

simplify status_string clearing
[slstatus.git] / slstatus.c
index 0906b9d..6e86092 100644 (file)
@@ -37,8 +37,6 @@ struct arg {
        const char *args;
 };
 
-static unsigned short int delay;
-
 static char *smprintf(const char *, ...);
 static char *battery_perc(const char *);
 static char *cpu_perc(void);
@@ -65,6 +63,7 @@ static char *vol_perc(const char *);
 static char *wifi_perc(const char *);
 static char *wifi_essid(const char *);
 
+static unsigned short int delay;
 static Display *dpy;
 
 #include "config.h"
@@ -513,7 +512,7 @@ wifi_perc(const char *wificard)
        char status[5];
        FILE *fp;
 
-       ccat(3, "/sys/class/net", wificard, "/operstate");
+       ccat(3, "/sys/class/net/", wificard, "/operstate");
 
        fp = fopen(concat, "r");
 
@@ -569,6 +568,8 @@ wifi_essid(const char *wificard)
                return smprintf(UNKNOWN_STR);
        }
 
+       close(sockfd);
+
        if (strcmp((char *)wreq.u.essid.pointer, "") == 0)
                return smprintf(UNKNOWN_STR);
        else
@@ -586,7 +587,7 @@ main(void)
        dpy = XOpenDisplay(NULL);
 
        for (;;) {
-               memset(status_string, 0, sizeof(status_string));
+               status_string[0] = '\0';
                for (i = 0; i < sizeof(args) / sizeof(args[0]); ++i) {
                        argument = args[i];
                        if (argument.args == NULL)