check if we're in the group already, else multiple calls to

group_movetogroup() on one client will still increment nhidden if the
group is hidden.

found the hard way by Thomas Jeunet and fix from Alexander Polakov -
thanks to both!

ok oga@
This commit is contained in:
okan 2011-12-29 20:48:38 +00:00
parent 22c2bc618b
commit fd9b83a232

View File

@ -222,11 +222,13 @@ group_movetogroup(struct client_ctx *cc, int idx)
err(1, "group_movetogroup: index out of range (%d)", idx); err(1, "group_movetogroup: index out of range (%d)", idx);
gc = &sc->groups[idx]; gc = &sc->groups[idx];
if (cc->group == gc)
return;
if (gc->hidden) { if (gc->hidden) {
client_hide(cc); client_hide(cc);
gc->nhidden++; gc->nhidden++;
} }
group_add(&sc->groups[idx], cc); group_add(gc, cc);
} }
/* /*