Commit 41630383 authored by Nalin Dahyabhai's avatar Nalin Dahyabhai

account for valid CSI sequences which were missed earlier.

* src/iso2022.c(_vte_iso2022_fragment_input): account for valid CSI sequences
	which were missed earlier.
parent 66ff84b4
2003-04-22 nalin
* src/iso2022.c(_vte_iso2022_fragment_input): account for valid CSI
sequences which were missed earlier.
2003-04-22 nalin
* src/vte.c(vte_terminal_eof): dispose of the PTY completely.
* src/vte.c(vte_terminal_child_exited): dispose of the PTY completely.
......
......@@ -775,7 +775,7 @@ _vte_iso2022_fragment_input(struct _vte_buffer *input, GArray *blocks)
{
unsigned char *nextctl = NULL, *p, *q;
const unsigned char *valids = NULL;
glong sequence_length, i;
glong sequence_length = 0, i;
struct _vte_iso2022_block block;
gboolean quit;
......@@ -822,12 +822,18 @@ _vte_iso2022_fragment_input(struct _vte_buffer *input, GArray *blocks)
} else {
switch (nextctl[1]) {
case '[':
/* ESC [, the CSI. The first not a
* letter is the end of the sequence, */
/* ESC [, the CSI. The first letter
* is the end of the sequence, */
for (i = 2; i < q - nextctl; i++) {
if (g_unichar_isalpha(nextctl[i])) {
break;
}
if ((nextctl[i] == '@') ||
(nextctl[i] == '`') ||
(nextctl[i] == '{') ||
(nextctl[i] == '|')) {
break;
}
}
if (i < q - nextctl) {
/* Return the length of this
......@@ -964,6 +970,8 @@ _vte_iso2022_fragment_input(struct _vte_buffer *input, GArray *blocks)
}
}
break;
default:
break;
}
}
break;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment