diff --git a/.idea/libraries/pty4j.xml b/.idea/libraries/pty4j.xml index 49401186e946..6ff8d23d1170 100644 --- a/.idea/libraries/pty4j.xml +++ b/.idea/libraries/pty4j.xml @@ -1,11 +1,11 @@ - + - + diff --git a/build/scripts/libLicenses.gant b/build/scripts/libLicenses.gant index 00cb4ced5e57..89a3e152b7fb 100644 --- a/build/scripts/libLicenses.gant +++ b/build/scripts/libLicenses.gant @@ -227,7 +227,7 @@ libraryLicense(name: "Jaxen", version: "", license: "modified Apache", url: "htt libraryLicense(name: "jayatana", libraryName: "jayatana", version: "1.2.4", license: "MIT License", url: "https://code.google.com/p/java-swing-ayatana/", licenseUrl: "http://opensource.org/licenses/mit-license.php") libraryLicense(name: "JCIP Annotations", libraryName: "jcip", license: "Creative Commons Attribution License", url: "http://www.jcip.net", licenseUrl: "http://creativecommons.org/licenses/by/2.5") libraryLicense(name: "JDOM", version: "1.1 (with patches by JetBrains)", license: "modified Apache", url: "http://www.jdom.org/", licenseUrl: "http://www.jdom.org/docs/faq.html#a0030") -libraryLicense(name: "JediTerm", libraryName: "jediterm-pty", version: "0.2", license: "LGPL 2", url: "https://github.com/traff/jediterm", licenseUrl: "https://github.com/traff/jediterm/blob/master/COPYING") +libraryLicense(name: "JediTerm", libraryName: "jediterm-pty", version: "2.2", license: "LGPL 2", url: "https://github.com/JetBrains/jediterm", licenseUrl: "https://github.com/JetBrains/jediterm/blob/master/COPYING") libraryLicense(name: "JEuclid", libraryName: "jeuclid-core-3.1.9.jar", version: "3.1.9", license: "Apache 2.0", url: "http://jeuclid.sourceforge.net", licenseUrl:"http://sourceforge.net/p/jeuclid/code/ci/default/tree/LICENSE.txt") libraryLicense(name: "JGit", libraryName: "jackson", version: "2.5.1", license: "Apache 2.0", licenseUrl: "http://www.eclipse.org/org/documents/edl-v10.php", url: "https://github.com/FasterXML/jackson") libraryLicense(name: "JGit", libraryName: "jgit", version: "4.0", license: "Eclipse Distribution License 1.0", licenseUrl: "http://www.eclipse.org/org/documents/edl-v10.php", url: "https://eclipse.org/jgit/") @@ -279,7 +279,7 @@ libraryLicense(name: "Plexus Utils", libraryName: "plexus-utils-1.5.5.jar", vers libraryLicense(name: "pockets", attachedTo: "python-helpers", version: "0.2.4", license: "BSD", url: "http://pockets.readthedocs.org/") libraryLicense(name: "protobuf", version: "2.5.0", license: "New BSD", url: "http://code.google.com/p/protobuf/", licenseUrl: "https://github.com/google/protobuf/blob/master/LICENSE") libraryLicense(name: "proxy-vole", libraryName: "proxy-vole", version: "20131209", license: "New BSD License", url: "http://code.google.com/p/proxy-vole/", licenseUrl: "http://opensource.org/licenses/BSD-3-Clause") -libraryLicense(name: "pty4j", libraryName: "pty4j", version: "0.6", license: "Eclipse Public License v1.0", url: "https://github.com/traff/pty4j") +libraryLicense(name: "pty4j", libraryName: "pty4j", version: "0.7", license: "Eclipse Public License v1.0", url: "https://github.com/traff/pty4j") libraryLicense(name: "PureJavaComm", libraryName: "purejavacomm", version: "0.0.16", license: "BSD", url: "http://www.sparetimelabs.com/purejavacomm") libraryLicense(name: "ReflectASM", libraryName: "reflectasm-1.0.7.jar", version: "1.0.7", license: "BSD", url: "https://github.com/EsotericSoftware/reflectasm", licenseUrl: "http://opensource.org/licenses/BSD-3-Clause") libraryLicense(name: "Relax NG Object Model", libraryName: "rngom-20051226-patched.jar", license: "MIT", url: "http://java.net/projects/rngom/", licenseUrl: "http://www.opensource.org/licenses/mit-license.php") diff --git a/lib/libpty/readme.txt b/lib/libpty/readme.txt index c7d91b0105fb..1c1154f29a85 100644 --- a/lib/libpty/readme.txt +++ b/lib/libpty/readme.txt @@ -2,4 +2,4 @@ * cyglaunch.exe is a part of pty4j library licensed under Eclipse Public License and is linked with Cygwin™ according to Cygwin™ Open Source Licensing Exception (see https://cygwin.com/licensing.html) * purejavacomm - we use forked version that fixes JNA and YourKit Profiler incompatibility - https://github.com/traff/purejavacomm -* libwinpty.dll and winpty-agent.exe - Windows PTY native implementation used by pty4j, we use forked version from https://github.com/traff/winpty \ No newline at end of file +* winpty.dll and winpty-agent.exe - Windows PTY native implementation used by pty4j - https://github.com/rprichard/winpty \ No newline at end of file diff --git a/lib/libpty/win/x86/libwinpty.dll b/lib/libpty/win/x86/libwinpty.dll deleted file mode 100644 index 83221bc2b0ce..000000000000 Binary files a/lib/libpty/win/x86/libwinpty.dll and /dev/null differ diff --git a/lib/libpty/win/x86/winpty-agent.exe b/lib/libpty/win/x86/winpty-agent.exe index 6c1fdd1295d7..3abad80b8450 100644 Binary files a/lib/libpty/win/x86/winpty-agent.exe and b/lib/libpty/win/x86/winpty-agent.exe differ diff --git a/lib/libpty/win/x86/winpty.dll b/lib/libpty/win/x86/winpty.dll new file mode 100755 index 000000000000..f07b95a27b3a Binary files /dev/null and b/lib/libpty/win/x86/winpty.dll differ diff --git a/lib/libpty/win/x86_64/libwinpty.dll b/lib/libpty/win/x86_64/libwinpty.dll deleted file mode 100644 index 519ca8135a54..000000000000 Binary files a/lib/libpty/win/x86_64/libwinpty.dll and /dev/null differ diff --git a/lib/libpty/win/x86_64/winpty-agent.exe b/lib/libpty/win/x86_64/winpty-agent.exe index 8ebae382251d..e1963c4e3c85 100644 Binary files a/lib/libpty/win/x86_64/winpty-agent.exe and b/lib/libpty/win/x86_64/winpty-agent.exe differ diff --git a/lib/libpty/win/x86_64/winpty.dll b/lib/libpty/win/x86_64/winpty.dll new file mode 100644 index 000000000000..f9bdec0394fa Binary files /dev/null and b/lib/libpty/win/x86_64/winpty.dll differ diff --git a/lib/libpty/win/xp/libwinpty.dll b/lib/libpty/win/xp/libwinpty.dll deleted file mode 100755 index 83221bc2b0ce..000000000000 Binary files a/lib/libpty/win/xp/libwinpty.dll and /dev/null differ diff --git a/lib/libpty/win/xp/winpty-agent.exe b/lib/libpty/win/xp/winpty-agent.exe index 6c1fdd1295d7..cc18efda8c6d 100755 Binary files a/lib/libpty/win/xp/winpty-agent.exe and b/lib/libpty/win/xp/winpty-agent.exe differ diff --git a/lib/libpty/win/xp/winpty.dll b/lib/libpty/win/xp/winpty.dll new file mode 100755 index 000000000000..bd40cd1e9dbd Binary files /dev/null and b/lib/libpty/win/xp/winpty.dll differ diff --git a/lib/pty4j-0.6.jar b/lib/pty4j-0.7.jar similarity index 55% rename from lib/pty4j-0.6.jar rename to lib/pty4j-0.7.jar index c49d42a0889d..0c3d34a793f4 100644 Binary files a/lib/pty4j-0.6.jar and b/lib/pty4j-0.7.jar differ diff --git a/lib/required_for_dist.txt b/lib/required_for_dist.txt index 4bec9181fe1c..88a651c5ceaa 100644 --- a/lib/required_for_dist.txt +++ b/lib/required_for_dist.txt @@ -57,7 +57,7 @@ oromatcher.jar picocontainer.jar protobuf-2.5.0.jar proxy-vole_20131209.jar -pty4j-0.6.jar +pty4j-0.7.jar purejavacomm.jar resolver.jar rhino-js-1_7R4.jar diff --git a/lib/src/pty4j-0.6-src.jar b/lib/src/pty4j-0.7-src.jar similarity index 58% rename from lib/src/pty4j-0.6-src.jar rename to lib/src/pty4j-0.7-src.jar index 93241bdada53..cd45a7ab5c58 100644 Binary files a/lib/src/pty4j-0.6-src.jar and b/lib/src/pty4j-0.7-src.jar differ diff --git a/platform/platform-api/src/com/intellij/execution/process/OSProcessHandler.java b/platform/platform-api/src/com/intellij/execution/process/OSProcessHandler.java index a04b23a09084..c1354f4b3299 100644 --- a/platform/platform-api/src/com/intellij/execution/process/OSProcessHandler.java +++ b/platform/platform-api/src/com/intellij/execution/process/OSProcessHandler.java @@ -48,14 +48,6 @@ public class OSProcessHandler extends BaseOSProcessHandler { myHasErrorStream = !commandLine.isRedirectErrorStream(); setHasPty(commandLine instanceof PtyCommandLine); myFilesToDelete = commandLine.getUserData(DELETE_FILES_ON_TERMINATION); - if (myHasPty && SystemInfo.isWindows) { // explicitly destroy pty on process termination, see IDEA-156065 - addProcessListener(new ProcessAdapter() { - @Override - public void processTerminated(ProcessEvent event) { - getProcess().destroy(); - } - }); - } } /** @deprecated use {@link #OSProcessHandler(Process, String)} or any other ctor (to be removed in IDEA 17) */ diff --git a/plugins/terminal/lib/jediterm-pty-2.1.jar b/plugins/terminal/lib/jediterm-pty-2.2.jar similarity index 66% rename from plugins/terminal/lib/jediterm-pty-2.1.jar rename to plugins/terminal/lib/jediterm-pty-2.2.jar index bef8585e0e76..a1f211ba05dd 100644 Binary files a/plugins/terminal/lib/jediterm-pty-2.1.jar and b/plugins/terminal/lib/jediterm-pty-2.2.jar differ diff --git a/plugins/terminal/src/org/jetbrains/plugins/terminal/JBTabbedTerminalWidget.java b/plugins/terminal/src/org/jetbrains/plugins/terminal/JBTabbedTerminalWidget.java index 9f0fadd68752..fe48ac065cd5 100644 --- a/plugins/terminal/src/org/jetbrains/plugins/terminal/JBTabbedTerminalWidget.java +++ b/plugins/terminal/src/org/jetbrains/plugins/terminal/JBTabbedTerminalWidget.java @@ -175,6 +175,17 @@ public class JBTabbedTerminalWidget extends TabbedTerminalWidget implements Disp //nop } + @Override + public int indexOfComponent(Component component) { + for (int i = 0; i - +