--- a/client.c Fri Sep 08 07:40:16 2006 +0200
+++ b/client.c Fri Sep 08 08:19:54 2006 +0200
@@ -414,14 +414,16 @@
void
unmanage(Client *c)
{
+ Client *nc;
+
XGrabServer(dpy);
XSetErrorHandler(xerrordummy);
detach(c);
detachstack(c);
if(sel == c) {
- for(sel = stack; sel && !isvisible(sel); sel = sel->snext);
- focus(sel);
+ for(nc = stack; nc && !isvisible(nc); nc = nc->snext);
+ focus(nc);
}
XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
--- a/view.c Fri Sep 08 07:40:16 2006 +0200
+++ b/view.c Fri Sep 08 08:19:54 2006 +0200
@@ -77,8 +77,8 @@
ban(c);
}
if(!sel || !isvisible(sel)) {
- for(sel = stack; sel && !isvisible(sel); sel = sel->snext);
- focus(sel);
+ for(c = stack; c && !isvisible(c); c = c->snext);
+ focus(c);
}
restack();
}
@@ -141,8 +141,8 @@
ban(c);
}
if(!sel || !isvisible(sel)) {
- for(sel = stack; sel && !isvisible(sel); sel = sel->snext);
- focus(sel);
+ for(c = stack; c && !isvisible(c); c = c->snext);
+ focus(c);
}
restack();
}