summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoberto E. Vargas Caballero2012-10-07 11:06:00 +0200
committerRoberto E. Vargas Caballero2012-10-07 11:06:00 +0200
commit25f47cb83a71f7d2872a197209cc2d8cd1c955ec (patch)
tree9e54ef8573128b722df9336d3eea700e0323df1d
parentffeeb678c5c6c6b895ad494b5b62195dd9893f65 (diff)
downloadst-25f47cb83a71f7d2872a197209cc2d8cd1c955ec.tar.gz
st-25f47cb83a71f7d2872a197209cc2d8cd1c955ec.tar.xz
st-25f47cb83a71f7d2872a197209cc2d8cd1c955ec.zip
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(-)
-rw-r--r--st.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/st.c b/st.c
index 85b0b59..8c8efaf 100644
--- a/st.c
+++ b/st.c
@@ -1514,7 +1514,7 @@ csihandle(void) {
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':
@@ -1940,7 +1940,8 @@ tputc(char *c, int len) {
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();