Xinqi Bao's Git
projects
/
slstatus.git
/ blobdiff
summary
|
log
|
commit
|
diff
|
tree
raw
|
inline
| side by side
added quinq to contributors
[slstatus.git]
/
slstatus.c
diff --git
a/slstatus.c
b/slstatus.c
index
9272c54
..
d442776
100644
(file)
--- a/
slstatus.c
+++ b/
slstatus.c
@@
-6,6
+6,7
@@
#include <ifaddrs.h>
#include <limits.h>
#include <linux/wireless.h>
#include <ifaddrs.h>
#include <limits.h>
#include <linux/wireless.h>
+#include <locale.h>
#include <netdb.h>
#include <pwd.h>
#include <signal.h>
#include <netdb.h>
#include <pwd.h>
#include <signal.h>
@@
-400,7
+401,7
@@
static char *
run_command(const char *cmd)
{
FILE *fp;
run_command(const char *cmd)
{
FILE *fp;
- char buf[
6
4] = "n/a";
+ char buf[
102
4] = "n/a";
fp = popen(cmd, "r");
if (fp == NULL) {
fp = popen(cmd, "r");
if (fp == NULL) {
@@
-408,9
+409,11
@@
run_command(const char *cmd)
return smprintf(UNKNOWN_STR);
}
fgets(buf, sizeof(buf)-1, fp);
return smprintf(UNKNOWN_STR);
}
fgets(buf, sizeof(buf)-1, fp);
- buf[strlen(buf)-1] = '\0';
pclose(fp);
pclose(fp);
+ buf[strlen(buf)] = '\0';
+ strtok(buf, "\n");
+
return smprintf("%s", buf);
}
return smprintf("%s", buf);
}
@@
-619,8
+622,8
@@
main(int argc, char *argv[])
if (dflag && oflag) {
usage();
}
if (dflag && oflag) {
usage();
}
- if (dflag) {
-
(void)daemon(1, 1
);
+ if (dflag
&& daemon(1, 1) < 0
) {
+
err(1, "daemon"
);
}
memset(&act, 0, sizeof(act));
}
memset(&act, 0, sizeof(act));
@@
-632,6
+635,8
@@
main(int argc, char *argv[])
dpy = XOpenDisplay(NULL);
}
dpy = XOpenDisplay(NULL);
}
+ setlocale(LC_ALL, "");
+
while (!done) {
status_string[0] = '\0';
while (!done) {
status_string[0] = '\0';