--- ../work/decompile-8eb82bde//net/minecraft/server/ThreadCommandReader.java	2014-11-28 17:43:43.385707429 +0000
+++ src/main/java/net/minecraft/server/ThreadCommandReader.java	2014-11-28 17:38:18.000000000 +0000
@@ -4,6 +4,8 @@
 import java.io.IOException;
 import java.io.InputStreamReader;
 
+import static org.bukkit.craftbukkit.Main.*; // CraftBukkit
+
 class ThreadCommandReader extends Thread {
 
     final DedicatedServer server;
@@ -14,13 +16,28 @@
     }
 
     public void run() {
-        BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(System.in));
+        // CraftBukkit start
+        if (!useConsole) {
+            return;
+        }
+        // CraftBukkit end
+
+        jline.console.ConsoleReader bufferedreader = this.server.reader; // CraftBukkit
 
         String s;
 
         try {
-            while (!this.server.isStopped() && this.server.isRunning() && (s = bufferedreader.readLine()) != null) {
-                this.server.issueCommand(s, this.server);
+            // CraftBukkit start - JLine disabling compatibility
+            while (!this.server.isStopped() && this.server.isRunning()) {
+                if (useJline) {
+                    s = bufferedreader.readLine(">", null);
+                } else {
+                    s = bufferedreader.readLine();
+                }
+                if (s != null && s.trim().length() > 0) { // Trim to filter lines which are just spaces
+                    this.server.issueCommand(s, this.server);
+                }
+                // CraftBukkit end
             }
         } catch (IOException ioexception) {
             DedicatedServer.aR().error("Exception handling console input", ioexception);