Commit Diff


commit - d4a17316d33f3c5a0017d7fe6e7e174883ccaa97
commit + 6530025bcaf3a65083667a93ae50035bd7137bae
blob - 814f3f5b404b4c3d842456e65252cfd59d44848d
blob + d8ff30b5a8746e07cc70ae00722772788ec7015a
--- st.c
+++ st.c
@@ -2311,13 +2311,13 @@ techo(char *buf, int len) {
 	for(; len > 0; buf++, len--) {
 		char c = *buf;
 
-		if(ISCONTROL(c)) { /* control code */
+		if(ISCONTROL((uchar) c)) { /* control code */
 			if(c & 0x80) {
 				c &= 0x7f;
 				tputc("^", 1);
 				tputc("[", 1);
 			} else if(c != '\n' && c != '\r' && c != '\t') {
-				c ^= '\x40';
+				c ^= 0x40;
 				tputc("^", 1);
 			}
 			tputc(&c, 1);