From: Colona Date: Wed, 7 May 2014 08:05:27 +0000 (+0200) Subject: Also clears ESC_START on interrupt characters during sequences. X-Git-Url: https://git.danieliu.xyz/?a=commitdiff_plain;h=5e917ab2874de556de12ce43e9a97300c9c722a2;p=st.git Also clears ESC_START on interrupt characters during sequences. Otherwise, the rest of the input is interpreted as a new escape sequence. For the ESC character, ESC_START is re-set in tcontrolcode. --- diff --git a/st.c b/st.c index fe44608..baab589 100644 --- a/st.c +++ b/st.c @@ -2446,7 +2446,7 @@ tputc(char *c, int len) { (ascii == '\a' || ascii == 030 || ascii == 032 || ascii == 033 || ISCONTROLC1(unicodep))) { - term.esc &= ~ESC_STR; + term.esc &= ~(ESC_START|ESC_STR); term.esc |= ESC_STR_END; } else if(strescseq.len + len < sizeof(strescseq.buf) - 1) { memmove(&strescseq.buf[strescseq.len], c, len);