Commit Diff


commit - 02dc681a9824cade538b0f2f5db987733d29e9c0
commit + baa6e34b72e5d978fb0da4266c4527e7e582e675
blob - 46a852bda917608e4a01d520e88405799aa509c9
blob + c2bd7766885bbb763ad714c1f6771acfc8ee959a
--- src/cmd/9term/9term.c
+++ src/cmd/9term/9term.c
@@ -174,15 +174,17 @@ resizethread(void *v)
 	
 	USED(v);
 	
-	while(recv(mousectl->resizec, nil) == 1){
-		if(getwindow(display, Refnone) < 0)
-			sysfatal("can't reattach to window");
+	for(;;){
 		p = stringsize(display->defaultfont, "0");
 		if(p.x && p.y)
 			updatewinsize(Dy(screen->r)/p.y, (Dx(screen->r)-Scrollwid-2)/p.x, 
 				Dx(screen->r), Dy(screen->r));
 		wresize(w, screen, 0);
 		flushimage(display, 1);
+		if(recv(mousectl->resizec, nil) != 1)
+			break;
+		if(getwindow(display, Refnone) < 0)
+			sysfatal("can't reattach to window");
 	}
 }
 			
blob - 915836a828064f53b0e1e953995d666d614d4d76
blob + 52b9bb8a0daa6b07f74522d0ef53d4b4216ad995
--- src/cmd/9term/bsdpty.c
+++ src/cmd/9term/bsdpty.c
@@ -76,9 +76,10 @@ updatewinsize(int row, int col, int dx, int dy)
 	ws.ws_col = col;
 	ws.ws_xpixel = dx;
 	ws.ws_ypixel = dy;
-	if(ws.ws_row != ows.ws_row || ws.ws_col != ows.ws_col)
-	if(ioctl(rcfd, TIOCSWINSZ, &ws) < 0)
-		fprint(2, "ioctl: %r\n");
+	if(ws.ws_row != ows.ws_row || ws.ws_col != ows.ws_col){
+		if(ioctl(rcfd, TIOCSWINSZ, &ws) < 0)
+			fprint(2, "ioctl: %r\n");
+	}
 	ows = ws;
 }