aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--st.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/st.c b/st.c
index fde4d2d..b148401 100644
--- a/st.c
+++ b/st.c
@@ -2315,19 +2315,14 @@ techo(char *buf, int len) {
2315 2315
2316void 2316void
2317tdeftran(char ascii) { 2317tdeftran(char ascii) {
2318 char c, (*bp)[2]; 2318 static char cs[] = "0B";
2319 static char tbl[][2] = { 2319 static int vcs[] = {CS_GRAPHIC0, CS_USA};
2320 {'0', CS_GRAPHIC0}, {'B', CS_USA}, 2320 char *p;
2321 {0, 0}
2322 };
2323
2324 for (bp = &tbl[0]; (c = (*bp)[0]) && c != ascii; ++bp)
2325 /* nothing */;
2326 2321
2327 if (c == 0) 2322 if((p = strchr(cs, ascii)) == NULL)
2328 fprintf(stderr, "esc unhandled charset: ESC ( %c\n", ascii); 2323 fprintf(stderr, "esc unhandled charset: ESC ( %c\n", ascii);
2329 else 2324 else
2330 term.trantbl[term.icharset] = (*bp)[1]; 2325 term.trantbl[term.icharset] = vcs[p - cs];
2331} 2326}
2332 2327
2333void 2328void