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(-)
This commit is contained in:
		
							
								
								
									
										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(); | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user