When I introduced support for executing Microsoft Store applications through
their "app execution aliases" (i.e. special reparse points installed into
%LOCALAPPDATA%\Microsoft\WindowsApps) in
https://inbox.sourceware.org/cygwin-patches/[email protected]/,
I had missed that it failed to spawn the process with the correct handles to
the terminal, breaking interactive usage of, say, the Python interpreter.

This was later reported in
https://inbox.sourceware.org/cygwin/CAAM_cieBo_M76sqZMGgF+tXxswvT=juhl_pshff+arv9p1e...@mail.gmail.com/t/#u,
and also in https://github.com/python/pymanager/issues/210 (which was then
re-reported in
https://github.com/msys2/MSYS2-packages/issues/1943#issuecomment-3467583078).

The root cause is that the is_console_app() function required quite a bit of
TLC, which this here patch series tries to provide.

Johannes Schindelin (3):
  Cygwin: is_console_app(): do handle errors
  Cygwin: is_console_app(): deal with the `.bat`/`.cmd` file extensions
    first
  Cygwin: is_console_app(): handle app execution aliases

 winsup/cygwin/fhandler/termios.cc | 25 +++++++++++++++++++++----
 1 file changed, 21 insertions(+), 4 deletions(-)


base-commit: 7d43942e7c3b56799e9e46c4701f86a8eb0ed579
Published-As: 
https://github.com/cygwingitgadget/cygwin/releases/tag/pr-5%2Fdscho%2Ffix-stdio-with-app-exec-aliases-v1
Fetch-It-Via: git fetch https://github.com/cygwingitgadget/cygwin 
pr-5/dscho/fix-stdio-with-app-exec-aliases-v1
Pull-Request: https://github.com/cygwingitgadget/cygwin/pull/5
-- 
cygwingitgadget

Reply via email to