Author: gnodet
Date: Fri Aug 28 07:15:23 2009
New Revision: 808782

URL: http://svn.apache.org/viewvc?rev=808782&view=rev
Log:
FELIX-1529: fix console ^D handling

Modified:
    
felix/trunk/karaf/gshell/gshell-console/src/main/java/org/apache/felix/karaf/gshell/console/jline/Console.java

Modified: 
felix/trunk/karaf/gshell/gshell-console/src/main/java/org/apache/felix/karaf/gshell/console/jline/Console.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/karaf/gshell/gshell-console/src/main/java/org/apache/felix/karaf/gshell/console/jline/Console.java?rev=808782&r1=808781&r2=808782&view=diff
==============================================================================
--- 
felix/trunk/karaf/gshell/gshell-console/src/main/java/org/apache/felix/karaf/gshell/console/jline/Console.java
 (original)
+++ 
felix/trunk/karaf/gshell/gshell-console/src/main/java/org/apache/felix/karaf/gshell/console/jline/Console.java
 Fri Aug 28 07:15:23 2009
@@ -219,7 +219,7 @@
             } else {
                 i = queue.poll();
             }
-            if (i == null || i == 4) {
+            if (i == null) {
                 return -1;
             }
             return i;
@@ -275,34 +275,30 @@
                         } else {
                             c = terminal.readCharacter(in);
                         }
-                        if (c == -1 || c == 4)
+                        if (c == -1)
                         {
-                            //System.err.println("Received  " + c + " ... 
closing");
-                            err.println("^D");
                             queue.put(c);
                             return;
                         }
+                        else if (c == 4)
+                        {
+                            err.println("^D");
+                        }
                         else if (c == 3)
                         {
                             err.println("^C");
                             reader.getCursorBuffer().clearBuffer();
                             interrupt();
-                            queue.put(c);
-                        }
-                        else
-                        {
-                            queue.put(c);
                         }
+                        queue.put(c);
                     }
                     catch (Throwable t) {
-                        //System.err.println("Exception in pipe: " + t);
                         return;
                     }
                 }
             }
             finally
             {
-                //System.err.println("Exiting pipe thread");
                 close();
             }
         }


Reply via email to