|
Lines 1096-1102
process_escapes(Channel *c, Buffer *bin, Buffer *bout, Buffer *berr,
Link Here
|
| 1096 |
/* Get one character at a time. */ |
1096 |
/* Get one character at a time. */ |
| 1097 |
ch = buf[i]; |
1097 |
ch = buf[i]; |
| 1098 |
|
1098 |
|
| 1099 |
if (*escape_pendingp) { |
1099 |
/* ANSI terminal escape sequences may appear anywhere in input stream. */ |
|
|
1100 |
/* They do not affect our processing of our own escapes. */ |
| 1101 |
if (ch == 0x1B && buf[i+1] == '[') { |
| 1102 |
for (; i < (u_int)len; i++) { |
| 1103 |
ch = buf[i]; |
| 1104 |
buffer_put_char(bin, ch); |
| 1105 |
if (isalpha(ch)) |
| 1106 |
break; |
| 1107 |
} |
| 1108 |
continue; |
| 1109 |
} else if (*escape_pendingp) { |
| 1100 |
/* We have previously seen an escape character. */ |
1110 |
/* We have previously seen an escape character. */ |
| 1101 |
/* Clear the flag now. */ |
1111 |
/* Clear the flag now. */ |
| 1102 |
*escape_pendingp = 0; |
1112 |
*escape_pendingp = 0; |
| 1103 |
- |
|
|