diff -r 430ebd3c0050 -r e10cbf276218 dwm.c --- a/dwm.c Tue Sep 08 13:18:05 2009 +0100 +++ b/dwm.c Tue Sep 08 13:30:18 2009 +0100 @@ -1039,9 +1039,15 @@ ev.xclient.data.l[1] = CurrentTime; XSendEvent(dpy, selmon->sel->win, False, NoEventMask, &ev); } - else + else { + XGrabServer(dpy); + XSetErrorHandler(xerrordummy); + XSetCloseDownMode(dpy, DestroyAll); XKillClient(dpy, selmon->sel->win); - XSync(dpy, False); + XSync(dpy, False); + XSetErrorHandler(xerror); + XUngrabServer(dpy); + } } void