public inbox for cygwin-patches@cygwin.com
 help / color / mirror / Atom feed
From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: cygwin-patches@cygwin.com
Subject: Re: [PATCH 0/2] Return appropriate handle by _get_osfhandle() and GetStdHandle().
Date: Tue, 23 Mar 2021 15:27:29 +0100	[thread overview]
Message-ID: <YFn60XBYI5qRfpo4@calimero.vinschen.de> (raw)
In-Reply-To: <20210323225142.3ddc21334ca645ab838ddf49@nifty.ne.jp>

On Mar 23 22:51, Takashi Yano wrote:
> On Tue, 23 Mar 2021 14:32:39 +0100
> Corinna Vinschen wrote:
> > On Mar 23 21:52, Takashi Yano via Cygwin-patches wrote:
> > > On Tue, 23 Mar 2021 21:42:06 +0900
> > > Takashi Yano wrote:
> > > > On Tue, 23 Mar 2021 21:32:12 +0900
> > > > Takashi Yano wrote:
> > > > > I try to check run.exe behaviour and noticed that
> > > > > run cmd.exe
> > > > > and
> > > > > run cat.exe
> > > > > does not work with cygwin 3.0.7 and 3.2.0 (TEST) while these
> > > > > work in 3.1.7.
> > > > 
> > > > In obove cases, cmd.exe and cat.exe is running in *hidden* console,
> > > > therefore nothing is shown. Right?
> > > 
> > > In what situation are
> > >   psi->cb = sizeof (STARTUPINFO);
> > >   psi->hStdInput  = GetStdHandle (STD_INPUT_HANDLE);
> > >   psi->hStdOutput = GetStdHandle (STD_OUTPUT_HANDLE);
> > >   psi->hStdError  = GetStdHandle (STD_ERROR_HANDLE);
> > > these handles used?
> > 
> > Hmm, trying to make sense from the code, I'd say, these handles are used
> > by default, unless run.exe is already attached to a console.  In  the
> > latter case, it calls CreateFile( "CONIN$") etc. to attach the new
> > process to that console.
> 
> "if (!bForceUsingPipes && bHaveConsole)"
> then handles are replaced by CreateFile("CONIN$", ...) etc.
> else replaced by pipe handle. If so, handles returned by
> GetStdHandle() are never used.
> 
> Do I overlook something?

AFAICS, bForceUsingPipes is always FALSE.  bHaveConsole is only TRUE if
run.exe is started from a console.  If run.exe is started from the GUI
(which was the primary idea, IIRC), bHaveConsole is FALSE.  So the
GetStdHandle() handles are used when started from thre GUI, isn't it?


Corinna

  reply	other threads:[~2021-03-23 14:27 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-21  4:01 Takashi Yano
2021-03-21  4:01 ` [PATCH 1/2] Cygwin: syscalls.cc: Make _get_osfhandle() return appropriate handle Takashi Yano
2021-03-21  4:01 ` [PATCH 2/2] Cygwin: pty: Add hook for GetStdHandle() to " Takashi Yano
2021-03-21  8:44 ` [PATCH 0/2] Return appropriate handle by _get_osfhandle() and GetStdHandle() Takashi Yano
2021-03-21 23:07   ` Takashi Yano
2021-03-22 11:43     ` Corinna Vinschen
2021-03-22 17:02       ` Ken Brown
2021-03-23 10:10         ` Corinna Vinschen
2021-03-23 11:57           ` Takashi Yano
2021-03-23 12:17             ` Corinna Vinschen
2021-03-23 12:32               ` Takashi Yano
2021-03-23 12:42                 ` Takashi Yano
2021-03-23 12:46                   ` Corinna Vinschen
2021-03-23 12:52                   ` Takashi Yano
2021-03-23 13:32                     ` Corinna Vinschen
2021-03-23 13:51                       ` Takashi Yano
2021-03-23 14:27                         ` Corinna Vinschen [this message]
2021-03-23 12:44                 ` Corinna Vinschen
2021-03-23 13:09                   ` Jon Turney
2021-03-23 15:21                     ` ASSI
2021-03-23 15:54                       ` Corinna Vinschen
2021-03-23 19:45                     ` Brian Inglis
2021-03-24 10:43           ` Marco Atzeri
2021-03-24 10:52             ` Corinna Vinschen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YFn60XBYI5qRfpo4@calimero.vinschen.de \
    --to=corinna-cygwin@cygwin.com \
    --cc=cygwin-patches@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).