From f0c9f65a1151516ffc175667a56f4443c0a4859d Mon Sep 17 00:00:00 2001 From: Marco Peereboom Date: Thu, 8 Oct 2009 04:50:27 +0000 Subject: [PATCH] sprinkle more if p == null return. we should audit all functions for this. --- scrotwm.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/scrotwm.c b/scrotwm.c index 5292725..5be409d 100644 --- a/scrotwm.c +++ b/scrotwm.c @@ -997,6 +997,9 @@ client_msg(struct ws_win *win, Atom a) { XClientMessageEvent cm; + if (win == NULL) + return; + bzero(&cm, sizeof cm); cm.type = ClientMessage; cm.window = win->id; @@ -1014,6 +1017,10 @@ config_win(struct ws_win *win) DNPRINTF(SWM_D_MISC, "config_win: win %lu x %d y %d w %d h %d\n", win->id, win->g.x, win->g.y, win->g.w, win->g.h); + + if (win == NULL) + return; + ce.type = ConfigureNotify; ce.display = display; ce.event = win->id; @@ -1123,6 +1130,9 @@ fake_keypress(struct ws_win *win, int keysym, int modifiers) { XKeyEvent event; + if (win == NULL) + return; + event.display = display; /* Ignored, but what the hell */ event.window = win->id; event.root = win->s->root; @@ -1261,7 +1271,8 @@ unfocus_win(struct ws_win *win) { if (win == NULL) return; - + if (win->ws == NULL) + return; if (win->ws->r == NULL) return; @@ -1296,6 +1307,8 @@ focus_win(struct ws_win *win) if (win == NULL) return; + if (win->ws == NULL) + return; /* use big hammer to make sure it works under all use cases */ unfocus_all(); -- 1.7.10.4