diff --git a/main/term.c b/main/term.c index e92a27077f2bf4727d9afd0e428a9b7fe203e001..bdafa49e2035d7b8c01d46f20525b8f5b10651df 100644 --- a/main/term.c +++ b/main/term.c @@ -264,31 +264,28 @@ char *term_prompt(char *outbuf, const char *inbuf, int maxout) return outbuf; } - /* filter escape sequences */ void term_filter_escapes(char *line) { int i; - for (i=0; i < strlen(line); i++) { - if (line[i] == ESC) { - if (line[i+1] == '\x5b') { - switch (line[i+2]) { - case '\x30': - break; - case '\x31': - break; - case '\x33': - break; - default: - /* replace ESC with a space */ - line[i] = ' '; - } - } else { - /* replace ESC with a space */ - line[i] = ' '; - } - } + for (i = 0; i < strlen(line); i++) { + if (line[i] != ESC) + continue; + if (line[i + 1] == '\x5b') { + switch (line[i + 2]) { + case '\x30': + case '\x31': + case '\x33': + break; + default: + /* replace ESC with a space */ + line[i] = ' '; + } + } else { + /* replace ESC with a space */ + line[i] = ' '; + } } }