diff -r b8329bfe5046 dwm.c --- a/dwm.c Wed Jun 18 18:22:54 2008 +0100 +++ b/dwm.c Thu Jun 19 08:08:17 2008 +0200 @@ -1496,14 +1496,22 @@ void toggletag(const Arg *arg) { - if(sel && (sel->tags ^= (arg->ui & TAGMASK))) + uint mask = sel->tags ^ (arg->ui & TAGMASK); + + if(sel && mask) { + sel->tags = mask; arrange(); + } } void toggleview(const Arg *arg) { - if((tagset[seltags] ^= (arg->ui & TAGMASK))) + uint mask = tagset[seltags] ^ (arg->ui & TAGMASK); + + if(mask) { + tagset[seltags] = mask; arrange(); + } } void