[PATCH 0/2] Return appropriate handle by _get_osfhandle() and GetStdHandle().

Takashi Yano takashi.yano@nifty.ne.jp
Tue Mar 23 12:32:12 GMT 2021


On Tue, 23 Mar 2021 13:17:16 +0100
Corinna Vinschen wrote:
> On Mar 23 20:57, Takashi Yano via Cygwin-patches wrote:
> > Corinna Vinschen wrote:
> > > > > On Mar 22 08:07, Takashi Yano via Cygwin-patches wrote:
> > > > > > > And also, following cygwin apps/dlls call GetStdHandle():
> > > > > > > ccmake.exe
> > > > > > > cmake.exe
> > > > > > > cpack.exe
> > > > > > > ctest.exe
> > > > > > > run.exe
> > > 
> > > run creates its own conin/conout handles to create a hidden console.
> > > The code calling GetStdHandle() is only for debug purposes and never
> > > built into the executable.
> 
> Sorry, but this was utterly wrong.  run calls GetStdHandle, then
> overwrites the handles, but only if it doesn't already is attached to a
> console.
> 
> > > Looks right to me.  If we patch cmake to do the right thing, do we still
> > > need this patch, Takashi?
> > 
> > I don't think so. If all is well with current code, nothing to be fixed.
> 
> How do you evaluate this in light of the run behaviour above?

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.

Is this expected behaviour?

-- 
Takashi Yano <takashi.yano@nifty.ne.jp>


More information about the Cygwin-patches mailing list