JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
removed the if(clients) check from popping code
[dwm.git] / client.c
index f268623..57ea617 100644 (file)
--- a/client.c
+++ b/client.c
@@ -49,6 +49,8 @@ ban(Client *c)
 void
 focus(Client *c)
 {
+       if (!issel)
+               return;
        Client *old = sel;
        XEvent ev;
 
@@ -409,7 +411,7 @@ togglemax(Arg *arg)
                sel->h = sh - 2 - bh;
 
                higher(sel);
-               resize(sel, False, TopLeft);
+               resize(sel, arrange == dofloat, TopLeft);
 
                sel->x = ox;
                sel->y = oy;
@@ -459,7 +461,7 @@ zoom(Arg *arg)
 {
        Client *c;
 
-       if(!sel || (arrange != dotile) || sel->isfloat)
+       if(!sel || (arrange != dotile) || sel->isfloat || sel->ismax)
                return;
 
        if(sel == getnext(clients))  {
@@ -475,8 +477,7 @@ zoom(Arg *arg)
        if(sel->next)
                sel->next->prev = sel->prev;
        sel->prev = NULL;
-       if(clients)
-               clients->prev = sel;
+       clients->prev = sel;
        sel->next = clients;
        clients = sel;
        arrange(NULL);