If is_console_app() returns false, it means the app is GUI. In this case,
standard handles would not be setup for non-cygwin app. Therefore, it is
safer to return true for unknown case. Setting-up standard handles for
GUI apps is poinless indeed, but not unsafe.
Fixes: bb4285206207 ("Cygwin: pty: Implement new pseudo console support.")
Reviewed-by: Johannes Schindelin <[email protected]>
Signed-off-by: Takashi Yano <[email protected]>
---
winsup/cygwin/fhandler/termios.cc | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/winsup/cygwin/fhandler/termios.cc
b/winsup/cygwin/fhandler/termios.cc
index 19d6220bc..d5eb98fc5 100644
--- a/winsup/cygwin/fhandler/termios.cc
+++ b/winsup/cygwin/fhandler/termios.cc
@@ -719,7 +719,9 @@ is_console_app (const WCHAR *filename)
wchar_t *e = wcsrchr (filename, L'.');
if (e && (wcscasecmp (e, L".bat") == 0 || wcscasecmp (e, L".cmd") == 0))
return true;
- return false;
+ /* Return true for unknown to avoid standard handles from being unset.
+ Setting-up standard handles for GUI apps is pointless, but not unsafe. */
+ return true;
}
int
--
2.51.0