diff --git a/src/winio.c b/src/winio.c index caf4c56d..8e68deab 100644 --- a/src/winio.c +++ b/src/winio.c @@ -845,27 +845,24 @@ int assemble_byte_code(int kbinput) { static int byte = 0; - switch (++digit_count) { - case 1: + if (++digit_count == 1) { /* The first digit is either 0, 1, or 2. */ byte = (kbinput - '0') * 100; return PROCEED; - case 2: + } else if (digit_count == 2) { /* The second digit may be at most 5 if the first was 2. */ if (byte < 200 || kbinput <= '5') { byte += (kbinput - '0') * 10; return PROCEED; } else return kbinput; - case 3: + } else { /* The third digit may be at most 5 if first two were 2 and 5. */ if (byte < 250 || kbinput <= '5') { return (byte + kbinput - '0'); } else return kbinput; } - - return 0; /* FIXME: this suppresses a compilation warning */ } /* Translate a normal ASCII character into its corresponding control code.