--- console-tools-0.3.3/lib/console/acm.c.jj Sun Jul 16 19:03:25 2000 +++ console-tools-0.3.3/lib/console/acm.c Mon Jul 17 11:12:44 2000 @@ -172,12 +172,28 @@ int acm_read_ascii(FILE *fp, unicode buf if (charmap_section) { + if (!strcmp (p, "END")) + charmap_section = 2; + + if (charmap_section == 2) + continue; + if (*p != '<') continue; - strtok (NULL, "x"); - inp = strtok (NULL, "<"); - outp = strtok (NULL, ">"); - if (!inp || !outp) + if (p[1] == 'U' && isxdigit(p[2]) && isxdigit(p[3]) && + isxdigit(p[4]) && isxdigit(p[5]) && p[6] == '>') + { + outp = p + 1; + strtok (NULL, "x"); + inp = strtok (NULL, " \t\n"); + } + else + { + strtok (NULL, "x"); + inp = strtok (NULL, "<"); + outp = strtok (NULL, ">"); + } + if (!inp || !outp || *outp != 'U') { /* restore sig mask */ sigprocmask (SIG_SETMASK, &old_sigset, NULL);