From: Colona <colona@ycc.fr>
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.owens.tech/dummy.html/dummy.html/git?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);