--- st-1827e0643fc95b44d12eaf951be5994637d1b30d/st.c +++ st-1827e0643fc95b44d12eaf951be5994637d1b30d-1/st.c @@ -1932,7 +1932,9 @@ break; default: strescseq.buf[strescseq.len++] = ascii; - if(strescseq.len+1 >= STR_BUF_SIZ) { + if (len == 2) + strescseq.buf[strescseq.len++] = *(c+1); + if(strescseq.len+2 >= STR_BUF_SIZ) { term.esc = 0; strhandle(); }