Client *next;
Client *snext;
Window win;
- void *aux;
- void (*freeaux)(void *);
};
typedef struct {
void
detach(Client *c) {
- Client *i;
+ Client **tc;
- if (c != clients) {
- for(i = clients; i->next != c; i = i->next);
- i->next = c->next;
- }
- else {
- clients = c->next;
- }
- c->next = NULL;
+ for(tc = &clients; *tc && *tc != c; tc = &(*tc)->next);
+ *tc = c->next;
}
void
detachstack(c);
if(sel == c)
focus(NULL);
- if(c->aux && c->freeaux)
- c->freeaux(c->aux);
XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
setclientstate(c, WithdrawnState);
free(c);