Xinqi Bao's Git
projects
/
dwm.git
/ diff
summary
|
log
|
commit
|
diff
|
tree
raw
|
patch
|
inline
| side by side (parent:
e7fa504
)
fixed crash on zoom if only 1 client exists
author
Anselm R. Garbe <
[email protected]
>
Fri, 14 Jul 2006 16:11:36 +0000
(18:11 +0200)
committer
Anselm R. Garbe <
[email protected]
>
Fri, 14 Jul 2006 16:11:36 +0000
(18:11 +0200)
client.c
diff
|
blob
|
history
diff --git
a/client.c
b/client.c
index
e3e31b6
..
487cb0c
100644
(file)
--- a/
client.c
+++ b/
client.c
@@
-28,13
+28,15
@@
next(Client *c)
void
zoom(Arg *arg)
{
void
zoom(Arg *arg)
{
- Client **l;
+ Client **l
, *c
;
if(!sel)
return;
if(!sel)
return;
- if(sel == next(clients))
- sel = next(sel->next);
+ if(sel == next(clients) && sel->next) {
+ if((c = next(sel->next)))
+ sel = c;
+ }
for(l = &clients; *l && *l != sel; l = &(*l)->next);
*l = sel->next;
for(l = &clients; *l && *l != sel; l = &(*l)->next);
*l = sel->next;
@@
-497,6
+499,10
@@
resize(Client *c, Bool inc)
if(c->inch)
c->h -= (c->h - c->baseh) % c->inch;
}
if(c->inch)
c->h -= (c->h - c->baseh) % c->inch;
}
+ if(c->x > sw) /* might happen on restart */
+ c->x = sw - c->w;
+ if(c->y > sh)
+ c->ty = c->y = sh - c->h;
if(c->minw && c->w < c->minw)
c->w = c->minw;
if(c->minh && c->h < c->minh)
if(c->minw && c->w < c->minw)
c->w = c->minw;
if(c->minh && c->h < c->minh)