Commit Diff


commit - 62780722f528fdbc19afb48128f1638e55d1568b
commit + 304b47c101cd50d019b6021352723ad26e411204
blob - 5fab040110ff24de2cb6e47daac5238351e2d6d8
blob + feef6b680cb02f227823883153916f7735201a6d
--- src/cmd/9term/9term.c
+++ src/cmd/9term/9term.c
@@ -229,7 +229,7 @@ threadmain(int argc, char *argv[])
 		maxtab = 4;	/* be like rio */
 
 	snprint(buf, sizeof buf, "%d", maxtab);
-	putenv("tabstop", maxtab);
+	putenv("tabstop", buf);
 
 	initdraw(0, nil, "9term");
 	notify(hangupnote);
@@ -1080,6 +1080,10 @@ runewrite(Rune *r, int n)
 		} else if(*p == '\r') {	/* treat like ^U */
 			/* convert CR without NL into erased line */
 			/* i feel really sleazy about this but it helps */
+			while(i<n-1 && *(p+1) == '\r'){
+				i++;
+				p++;
+			}
 			if(i<n-1 && *(p+1) != '\n'){
 				while(q > r && *(q-1) != '\n')
 					q--;