Repository: karaf
Updated Branches:
  refs/heads/master e4585a99c -> ba62eb5db


[KARAF-5216] Make sure terminal's attributes are restored correctly when using 
the client jar

Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/ba62eb5d
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/ba62eb5d
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/ba62eb5d

Branch: refs/heads/master
Commit: ba62eb5db5578576bb9b98de2453c4c24d2f8311
Parents: e4585a9
Author: Guillaume Nodet <[email protected]>
Authored: Fri Jun 23 08:28:34 2017 +0200
Committer: Guillaume Nodet <[email protected]>
Committed: Fri Jun 23 08:29:25 2017 +0200

----------------------------------------------------------------------
 client/src/main/java/org/apache/karaf/client/Main.java | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/ba62eb5d/client/src/main/java/org/apache/karaf/client/Main.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/org/apache/karaf/client/Main.java 
b/client/src/main/java/org/apache/karaf/client/Main.java
index 7335a9b..4f3e857 100644
--- a/client/src/main/java/org/apache/karaf/client/Main.java
+++ b/client/src/main/java/org/apache/karaf/client/Main.java
@@ -57,6 +57,7 @@ import org.apache.sshd.common.channel.PtyMode;
 import org.apache.sshd.common.config.keys.FilePasswordProvider;
 import org.apache.sshd.common.keyprovider.FileKeyPairProvider;
 import org.apache.sshd.common.util.io.NoCloseInputStream;
+import org.apache.sshd.common.util.io.NoCloseOutputStream;
 import org.jline.terminal.Attributes;
 import org.jline.terminal.Attributes.ControlChar;
 import org.jline.terminal.Attributes.InputFlag;
@@ -227,8 +228,9 @@ public class Main {
                         }
                         shell.setEnv("LC_CTYPE", ctype);
                     }
-                    channel.setOut(terminal.output());
-                    channel.setErr(terminal.output());
+                    NoCloseOutputStream output = new 
NoCloseOutputStream(terminal.output());
+                    channel.setOut(output);
+                    channel.setErr(output);
                     channel.open().verify();
                     if (channel instanceof PtyCapableChannelSession) {
                         registerSignalHandler(terminal, 
(PtyCapableChannelSession) channel);

Reply via email to