Author: ffang
Date: Wed May 22 06:04:00 2013
New Revision: 1485072
URL: http://svn.apache.org/r1485072
Log:
[KARAF-2326]Backspace stops working after shutdown command
Modified:
karaf/branches/karaf-2.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/Shutdown.java
Modified:
karaf/branches/karaf-2.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/Shutdown.java
URL:
http://svn.apache.org/viewvc/karaf/branches/karaf-2.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/Shutdown.java?rev=1485072&r1=1485071&r2=1485072&view=diff
==============================================================================
---
karaf/branches/karaf-2.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/Shutdown.java
(original)
+++
karaf/branches/karaf-2.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/Shutdown.java
Wed May 22 06:04:00 2013
@@ -87,12 +87,24 @@ public class Shutdown extends OsgiComman
if (c < 0) {
return null;
}
- System.err.print((char) c);
+ if (c == 127 || c == 'b') {
+ System.err.print((char) '\b');
+ System.err.print((char) ' ');
+ System.err.print((char) '\b');
+ } else {
+ System.err.print((char) c);
+ }
System.err.flush();
if (c == '\r' || c == '\n') {
break;
}
- sb.append((char) c);
+ if (c == 127 || c == 'b') {
+ if (sb.length() > 0) {
+ sb.deleteCharAt(sb.length() - 1);
+ }
+ } else {
+ sb.append((char) c);
+ }
}
String str = sb.toString();
if (str.equals("yes")) {