about summary refs log tree commit diff stats
path: root/dwm.c
diff options
context:
space:
mode:
Diffstat (limited to 'dwm.c')
-rw-r--r--dwm.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/dwm.c b/dwm.c
index 4ff4f9d..fbda0bb 100644
--- a/dwm.c
+++ b/dwm.c
@@ -1714,18 +1714,12 @@ updategeom(void) {
 
 	/* reassign left over clients of disappeared monitors */
 	for(tm = mons; tm; tm = tm->next) {
-		while(tm->clients) {
-			c = tm->clients->next;
-			tm->clients->next = newmons->clients;
-			tm->clients->mon = newmons;
-			newmons->clients = tm->clients;
-			tm->clients = c;
-		}
-		while(tm->stack) {
-			c = tm->stack->snext;
-			tm->stack->snext = newmons->stack;
-			newmons->sel = newmons->stack = tm->stack;
-			tm->stack = c;
+		while((c = tm->clients)) {
+			detach(c);
+			detachstack(c);
+			c->mon = newmons;
+			attach(c);
+			attachstack(c);
 		}
 	}