Cygwin: pty: Change the timing of clearing screen.
- The code which clears screen is moved from reset_switch_to_pcon() to fixup_after_exec() because it seems not too early even at this timing.
This commit is contained in:
		
							parent
							
								
									d83c45b46c
								
							
						
					
					
						commit
						244f03627d
					
				|  | @ -1041,19 +1041,6 @@ skip_console_setting: | |||
| void | ||||
| fhandler_pty_slave::reset_switch_to_pcon (void) | ||||
| { | ||||
|   if (get_ttyp ()->need_clear_screen) | ||||
|     { | ||||
|       const char *term = getenv ("TERM"); | ||||
|       if (term && strcmp (term, "dumb") && !strstr (term, "emacs")) | ||||
| 	{ | ||||
| 	  /* FIXME: Clearing sequence may not be "^[[H^[[J"
 | ||||
| 	     depending on the terminal type. */ | ||||
| 	  DWORD n; | ||||
| 	  WriteFile (get_output_handle_cyg (), "\033[H\033[J", 6, &n, NULL); | ||||
| 	} | ||||
|       get_ttyp ()->need_clear_screen = false; | ||||
|     } | ||||
| 
 | ||||
|   if (isHybrid) | ||||
|     this->set_switch_to_pcon (fd); | ||||
|   if (get_ttyp ()->pcon_pid && | ||||
|  | @ -2742,6 +2729,19 @@ fhandler_pty_slave::fixup_after_exec () | |||
| 	} | ||||
|     } | ||||
| 
 | ||||
|   if (get_ttyp ()->need_clear_screen) | ||||
|     { | ||||
|       const char *term = getenv ("TERM"); | ||||
|       if (term && strcmp (term, "dumb") && !strstr (term, "emacs")) | ||||
| 	{ | ||||
| 	  /* FIXME: Clearing sequence may not be "^[[H^[[J"
 | ||||
| 	     depending on the terminal type. */ | ||||
| 	  DWORD n; | ||||
| 	  WriteFile (get_output_handle_cyg (), "\033[H\033[J", 6, &n, NULL); | ||||
| 	} | ||||
|       get_ttyp ()->need_clear_screen = false; | ||||
|     } | ||||
| 
 | ||||
|   /* Set locale */ | ||||
|   setup_locale (); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue