FELIX-1803 - Unable to edit or backspace on multiline commands


git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@829728 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/karaf/shell/console/src/main/java/jline/AnsiWindowsTerminal.java b/karaf/shell/console/src/main/java/jline/AnsiWindowsTerminal.java
index 5a2df14..077ee72 100644
--- a/karaf/shell/console/src/main/java/jline/AnsiWindowsTerminal.java
+++ b/karaf/shell/console/src/main/java/jline/AnsiWindowsTerminal.java
@@ -18,14 +18,21 @@
  */
 package jline;
 
+import org.fusesource.jansi.AnsiConsole;
+import org.fusesource.jansi.WindowsAnsiOutputStream;
+
+import java.io.ByteArrayOutputStream;
 import java.io.InputStream;
 import java.io.IOException;
+import java.io.OutputStream;
 
 public class AnsiWindowsTerminal extends WindowsTerminal {
 
+    private boolean ansisupported = checkAnsiSupport();
+
     @Override
     public boolean isANSISupported() {
-        return true;
+        return ansisupported;
     }
 
     @Override
@@ -37,4 +44,17 @@
         return super.readCharacter(in);
     }
 
+    public static boolean checkAnsiSupport() {
+        OutputStream dummy = new ByteArrayOutputStream();
+        OutputStream ansiout = AnsiConsole.wrapOutputStream(dummy);
+        try {
+            dummy.close();
+            ansiout.close();
+        } catch (IOException ignore) {
+        }
+
+        return (ansiout instanceof WindowsAnsiOutputStream);
+
+    }
+
 }