PaperMC/nms-patches/ThreadCommandReader.patch

44 lines
1.7 KiB
Diff
Raw Normal View History

--- ../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);