This is the mail archive of the cygwin-patches mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Cygwin: pty: Change the timing of clear screen.


On 10/16/2019 8:34 AM, Takashi Yano wrote:
> ---
>   winsup/cygwin/fhandler_tty.cc | 26 +++++++++++++-------------
>   1 file changed, 13 insertions(+), 13 deletions(-)
> 
> diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc
> index 1095c82eb..baf3c9794 100644
> --- a/winsup/cygwin/fhandler_tty.cc
> +++ b/winsup/cygwin/fhandler_tty.cc
> @@ -2714,6 +2714,19 @@ fhandler_pty_slave::fixup_after_fork (HANDLE parent)
>     // fork_fixup (parent, inuse, "inuse");
>     // fhandler_pty_common::fixup_after_fork (parent);
>     report_tty_counts (this, "inherited", "");
> +
> +  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;
> +    }
>   }
>   
>   void
> @@ -2757,19 +2770,6 @@ 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 ();

This and the previous patch look good to me, but we should probably wait 
for Haubi to confirm that they fix the problems he reported.

Ken

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]