* [PATCH] Cygwin: pty: Stop counting number of slaves attached to pseudo console.
@ 2020-05-25 8:49 Takashi Yano
2020-05-25 9:03 ` Corinna Vinschen
0 siblings, 1 reply; 2+ messages in thread
From: Takashi Yano @ 2020-05-25 8:49 UTC (permalink / raw)
To: cygwin-patches
- The number of slaves attached to pseudo console is used only for
triggering redraw screen. Counting was not only needless, but also
did not work as expected. This patch removes the code for counting.
---
winsup/cygwin/fhandler_tty.cc | 22 +++++-----------------
winsup/cygwin/tty.cc | 3 +--
winsup/cygwin/tty.h | 1 -
3 files changed, 6 insertions(+), 20 deletions(-)
diff --git a/winsup/cygwin/fhandler_tty.cc b/winsup/cygwin/fhandler_tty.cc
index 5faf896e4..df08dd20a 100644
--- a/winsup/cygwin/fhandler_tty.cc
+++ b/winsup/cygwin/fhandler_tty.cc
@@ -1019,8 +1019,6 @@ fhandler_pty_slave::close ()
fhandler_pty_common::close ();
if (!ForceCloseHandle (output_mutex))
termios_printf ("CloseHandle (output_mutex<%p>), %E", output_mutex);
- if (pcon_attached_to == get_minor ())
- get_ttyp ()->num_pcon_attached_slaves --;
return 0;
}
@@ -2924,21 +2922,11 @@ fhandler_pty_slave::fixup_after_attach (bool native_maybe, int fd_set)
{
if (fhandler_console::get_console_process_id (get_helper_process_id (),
true))
- {
- if (pcon_attached_to != get_minor ())
- {
- pcon_attached_to = get_minor ();
- init_console_handler (true);
- }
- /* Clear screen to synchronize pseudo console screen buffer
- with real terminal. This is necessary because pseudo
- console screen buffer is empty at start. */
- if (get_ttyp ()->num_pcon_attached_slaves == 0)
- /* Assume this is the first process using this pty slave. */
- get_ttyp ()->need_redraw_screen = true;
-
- get_ttyp ()->num_pcon_attached_slaves ++;
- }
+ if (pcon_attached_to != get_minor ())
+ {
+ pcon_attached_to = get_minor ();
+ init_console_handler (true);
+ }
#if 0 /* This is for debug only. */
isHybrid = true;
diff --git a/winsup/cygwin/tty.cc b/winsup/cygwin/tty.cc
index 3fc46fb29..efdae4697 100644
--- a/winsup/cygwin/tty.cc
+++ b/winsup/cygwin/tty.cc
@@ -242,9 +242,8 @@ tty::init ()
screen_alternated = false;
mask_switch_to_pcon_in = false;
pcon_pid = 0;
- num_pcon_attached_slaves = 0;
term_code_page = 0;
- need_redraw_screen = false;
+ need_redraw_screen = true;
fwd_done = NULL;
pcon_last_time = 0;
pcon_in_empty = true;
diff --git a/winsup/cygwin/tty.h b/winsup/cygwin/tty.h
index c4dd2e458..7d6fc8fef 100644
--- a/winsup/cygwin/tty.h
+++ b/winsup/cygwin/tty.h
@@ -103,7 +103,6 @@ private:
bool screen_alternated;
bool mask_switch_to_pcon_in;
pid_t pcon_pid;
- int num_pcon_attached_slaves;
UINT term_code_page;
bool need_redraw_screen;
HANDLE fwd_done;
--
2.26.2
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] Cygwin: pty: Stop counting number of slaves attached to pseudo console.
2020-05-25 8:49 [PATCH] Cygwin: pty: Stop counting number of slaves attached to pseudo console Takashi Yano
@ 2020-05-25 9:03 ` Corinna Vinschen
0 siblings, 0 replies; 2+ messages in thread
From: Corinna Vinschen @ 2020-05-25 9:03 UTC (permalink / raw)
To: cygwin-patches
On May 25 17:49, Takashi Yano via Cygwin-patches wrote:
> - The number of slaves attached to pseudo console is used only for
> triggering redraw screen. Counting was not only needless, but also
> did not work as expected. This patch removes the code for counting.
> ---
> winsup/cygwin/fhandler_tty.cc | 22 +++++-----------------
> winsup/cygwin/tty.cc | 3 +--
> winsup/cygwin/tty.h | 1 -
> 3 files changed, 6 insertions(+), 20 deletions(-)
Pushed.
Thanks,
Corinna
--
Corinna Vinschen
Cygwin Maintainer
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-05-25 9:03 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-25 8:49 [PATCH] Cygwin: pty: Stop counting number of slaves attached to pseudo console Takashi Yano
2020-05-25 9:03 ` Corinna Vinschen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).