Fix Identification sequences
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(-)dev
parent
ffeeb678c5
commit
25f47cb83a
5
st.c
5
st.c
|
@ -1514,7 +1514,7 @@ csihandle(void) {
|
||||||
break;
|
break;
|
||||||
case 'c': /* DA -- Device Attributes */
|
case 'c': /* DA -- Device Attributes */
|
||||||
if(csiescseq.arg[0] == 0)
|
if(csiescseq.arg[0] == 0)
|
||||||
ttywrite(VT102ID, sizeof(VT102ID));
|
ttywrite(VT102ID, sizeof(VT102ID) - 1);
|
||||||
break;
|
break;
|
||||||
case 'C': /* CUF -- Cursor <n> Forward */
|
case 'C': /* CUF -- Cursor <n> Forward */
|
||||||
case 'a':
|
case 'a':
|
||||||
|
@ -1940,7 +1940,8 @@ tputc(char *c, int len) {
|
||||||
term.esc = 0;
|
term.esc = 0;
|
||||||
break;
|
break;
|
||||||
case 'Z': /* DECID -- Identify Terminal */
|
case 'Z': /* DECID -- Identify Terminal */
|
||||||
ttywrite(VT102ID, sizeof(VT102ID));
|
ttywrite(VT102ID, sizeof(VT102ID) - 1);
|
||||||
|
term.esc = 0;
|
||||||
break;
|
break;
|
||||||
case 'c': /* RIS -- Reset to inital state */
|
case 'c': /* RIS -- Reset to inital state */
|
||||||
treset();
|
treset();
|
||||||
|
|
Loading…
Reference in New Issue