Xinqi Bao's Git
projects
/
slstatus.git
/ blobdiff
summary
|
log
|
commit
|
diff
|
tree
raw
|
inline
| side by side
keyboard_indicators: fix segfault when -s is specified
[slstatus.git]
/
slstatus.c
diff --git
a/slstatus.c
b/slstatus.c
index
596d6a6
..
aa05cd1
100644
(file)
--- a/
slstatus.c
+++ b/
slstatus.c
@@
-382,6
+382,11
@@
keyboard_indicators(void)
{
Display *dpy = XOpenDisplay(NULL);
XKeyboardState state;
{
Display *dpy = XOpenDisplay(NULL);
XKeyboardState state;
+
+ if (dpy == NULL) {
+ warnx("XOpenDisplay failed");
+ return UNKNOWN_STR;
+ }
XGetKeyboardControl(dpy, &state);
XCloseDisplay(dpy);
XGetKeyboardControl(dpy, &state);
XCloseDisplay(dpy);
@@
-879,6
+884,10
@@
main(int argc, char *argv[])
if (!sflag) {
dpy = XOpenDisplay(NULL);
if (!sflag) {
dpy = XOpenDisplay(NULL);
+ if (!dpy) {
+ fprintf(stderr, "slstatus: cannot open display");
+ exit(1);
+ }
}
setlocale(LC_ALL, "");
}
setlocale(LC_ALL, "");