[PATCH] Cygwin: dtable: Delete old kludge code for /dev/tty.
Takashi Yano
takashi.yano@nifty.ne.jp
Tue Jul 4 09:58:11 GMT 2023
Hi Corinna,
Thanks for reviewing the patch.
On Mon, 3 Jul 2023 12:52:25 +0200
Corinna Vinschen wrote:
> Hi Takashi,
>
> On Jun 27 22:28, Takashi Yano wrote:
> > This old kludge code assigns fhandler_console for /dev/tty even
> > if the CTTY is not a console when stat() has been called. Due to
> > this, the problem reported in
> > https://cygwin.com/pipermail/cygwin/2023-June/253888.html
> > occurs after the commit 3721a756b0d8 ("Cygwin: console: Make the
> > console accessible from other terminals.").
> >
> > This patch fixes the issue by dropping the old kludge code.
> >
> > Reported-by: Bruce Jerrick <bmj001@gmail.com>
> > Signed-off-by: Takashi Yano <takashi.yano@nifty.ne.jp>
>
> Please add a "Fixes:" tag line.
>
> > ---
> > winsup/cygwin/dtable.cc | 7 +------
> > 1 file changed, 1 insertion(+), 6 deletions(-)
> >
> > diff --git a/winsup/cygwin/dtable.cc b/winsup/cygwin/dtable.cc
> > index 18e0f3097..9427e238e 100644
> > --- a/winsup/cygwin/dtable.cc
> > +++ b/winsup/cygwin/dtable.cc
> > @@ -598,12 +598,7 @@ fh_alloc (path_conv& pc)
> > fh = cnew (fhandler_mqueue);
> > break;
> > case FH_TTY:
> > - if (!pc.isopen ())
> > - {
> > - fhraw = cnew_no_ctor (fhandler_console, -1);
> > - debug_printf ("not called from open for /dev/tty");
> > - }
>
> This is ok-ish. The problem is that the original patch 23771fa1f7028
> does not explain *why* it assigned a console fhandler if the file is not
> open. Given that, it's not clear what side-effects we might encounter
> if we change this. Do you understand the situation here can you explain
> why dropping this kludge will do the right thing now? If so, it would
> be great to have a good description of the original idea behind the
> code and why we don't need it anymore in the commit message.
I am not really sure the reason why the kludge code was needed.
However, I noticed stat() fails before the commit 6ae28c22639d
without the kludge code if the program calls setsid(). After the
commit 6ae28c22639d, this does not happen. Therefore, I think
this kludge code is no longer necessary.
I will submit v2 patch where the commit message is updated.
--
Takashi Yano <takashi.yano@nifty.ne.jp>
More information about the Cygwin-patches
mailing list