Kaynağa Gözat

Simplify tdeftrans

Roberto E. Vargas Caballero 10 yıl önce
ebeveyn
işleme
93661042a2
1 değiştirilmiş dosya ile 5 ekleme ve 10 silme
  1. 5 10
      st.c

+ 5 - 10
st.c

@@ -2315,19 +2315,14 @@ techo(char *buf, int len) {
 
 void
 tdeftran(char ascii) {
-	char c, (*bp)[2];
-	static char tbl[][2] = {
-		{'0', CS_GRAPHIC0}, {'B', CS_USA},
-		{0, 0}
-	};
-
-	for (bp = &tbl[0]; (c = (*bp)[0]) && c != ascii; ++bp)
-		/* nothing */;
+	static char cs[] = "0B";
+	static int vcs[] = {CS_GRAPHIC0, CS_USA};
+	char *p;
 
-	if (c == 0)
+	if((p = strchr(cs, ascii)) == NULL)
 		fprintf(stderr, "esc unhandled charset: ESC ( %c\n", ascii);
 	else
-		term.trantbl[term.icharset] = (*bp)[1];
+		term.trantbl[term.icharset] = vcs[p - cs];
 }
 
 void