diff --git a/.idea/libraries/pty4j.xml b/.idea/libraries/pty4j.xml
index d3e314e2ecb3..f542b0d6c659 100644
--- a/.idea/libraries/pty4j.xml
+++ b/.idea/libraries/pty4j.xml
@@ -1,11 +1,11 @@
-
+
-
+
\ No newline at end of file
diff --git a/lib/pty4j-0.7.4.jar b/lib/pty4j-0.7.5.jar
similarity index 85%
rename from lib/pty4j-0.7.4.jar
rename to lib/pty4j-0.7.5.jar
index 8b16c4aafb97..f709f25daf16 100644
Binary files a/lib/pty4j-0.7.4.jar and b/lib/pty4j-0.7.5.jar differ
diff --git a/lib/src/pty4j-0.7.4-src.jar b/lib/src/pty4j-0.7.5-src.jar
similarity index 90%
rename from lib/src/pty4j-0.7.4-src.jar
rename to lib/src/pty4j-0.7.5-src.jar
index 5edc2121aa49..f8cd1d156dc7 100644
Binary files a/lib/src/pty4j-0.7.4-src.jar and b/lib/src/pty4j-0.7.5-src.jar differ
diff --git a/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy b/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy
index 486522b7c689..da1d94907622 100644
--- a/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy
+++ b/platform/build-scripts/groovy/org/jetbrains/intellij/build/CommunityLibraryLicenses.groovy
@@ -326,7 +326,7 @@ class CommunityLibraryLicenses {
licenseUrl: "https://github.com/google/protobuf/blob/master/LICENSE"),
new LibraryLicense(name: "Proxy Vole", libraryName: "proxy-vole", version: "1.0.4", license: "Apache 2.0",
url: "https://github.com/MarkusBernhardt/proxy-vole", licenseUrl: "https://github.com/MarkusBernhardt/proxy-vole/blob/master/LICENSE.md"),
- new LibraryLicense(name: "pty4j", libraryName: "pty4j", version: "0.7.4", license: "Eclipse Public License v1.0",
+ new LibraryLicense(name: "pty4j", libraryName: "pty4j", version: "0.7.5", license: "Eclipse Public License v1.0",
url: "https://github.com/traff/pty4j"),
new LibraryLicense(name: "PureJavaComm", libraryName: "purejavacomm", version: "0.0.16", license: "BSD",
url: "http://www.sparetimelabs.com/purejavacomm"),
diff --git a/platform/platform-api/src/com/intellij/execution/configurations/PtyCommandLine.java b/platform/platform-api/src/com/intellij/execution/configurations/PtyCommandLine.java
index 65f2198f6246..74bc025dfdee 100644
--- a/platform/platform-api/src/com/intellij/execution/configurations/PtyCommandLine.java
+++ b/platform/platform-api/src/com/intellij/execution/configurations/PtyCommandLine.java
@@ -23,7 +23,7 @@ import com.intellij.openapi.util.SystemInfo;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.registry.Registry;
import com.intellij.util.ArrayUtil;
-import com.pty4j.PtyProcess;
+import com.pty4j.PtyProcessBuilder;
import org.jetbrains.annotations.NotNull;
import java.io.File;
@@ -98,14 +98,17 @@ public class PtyCommandLine extends GeneralCommandLine {
Map env = new HashMap<>();
setupEnvironment(env);
- if (isRedirectErrorStream()) {
- LOG.error("Launching process with PTY and redirected error stream is unsupported yet");
- }
-
String[] command = ArrayUtil.toStringArray(commands);
File workDirectory = getWorkDirectory();
String directory = workDirectory != null ? workDirectory.getPath() : null;
boolean cygwin = myUseCygwinLaunch && SystemInfo.isWindows;
- return PtyProcess.exec(command, env, directory, console, cygwin, getPtyLogFile());
+ PtyProcessBuilder builder = new PtyProcessBuilder(command)
+ .setEnvironment(env)
+ .setDirectory(directory)
+ .setConsole(console)
+ .setCygwin(cygwin)
+ .setLogFile(getPtyLogFile())
+ .setRedirectErrorStream(isRedirectErrorStream());
+ return builder.start();
}
-}
\ No newline at end of file
+}