Do not send NUL character in the identification (use (sizeof(VT102ID) - 1),
and finish the sequence once you execute it.
---
st.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
break;
case 'c': /* DA -- Device Attributes */
if(csiescseq.arg[0] == 0)
- ttywrite(VT102ID, sizeof(VT102ID));
+ ttywrite(VT102ID, sizeof(VT102ID) - 1);
break;
case 'C': /* CUF -- Cursor <n> Forward */
case 'a':
term.esc = 0;
break;
case 'Z': /* DECID -- Identify Terminal */
- ttywrite(VT102ID, sizeof(VT102ID));
+ ttywrite(VT102ID, sizeof(VT102ID) - 1);
+ term.esc = 0;
break;
case 'c': /* RIS -- Reset to inital state */
treset();