in src/com/pty4j/PtyProcessBuilder.java [148:176]
public PtyProcess start() throws IOException {
if (myEnvironment == null) {
myEnvironment = System.getenv();
}
PtyProcessOptions options = new PtyProcessOptions(myCommand,
myEnvironment,
myDirectory,
myRedirectErrorStream,
myInitialColumns,
myInitialRows,
myWindowsAnsiColorEnabled,
myUnixOpenTtyToPreserveOutputAfterTermination,
mySpawnProcessUsingJdkOnMacIntel);
if (Platform.isWindows()) {
if (myCygwin) {
return new CygwinPtyProcess(myCommand.toArray(), myEnvironment, myDirectory, myLogFile, myConsole);
}
if (myUseWinConPty && !myConsole) {
try {
return new WinConPtyProcess(options, mySuspendedProcessCallback);
}
catch (UnsatisfiedLinkError e) {
LOG.info("Cannot create ConPTY process, fallback to winpty", e);
}
}
return new WinPtyProcess(options, myConsole);
}
return new UnixPtyProcess(options, myConsole);
}