From 93efa5a803b0b6759885ac1c0fa9c71788a27001 Mon Sep 17 00:00:00 2001 From: md_5 Date: Mon, 5 Jan 2015 09:24:38 +1100 Subject: "Fix" SPIGOT-349 - don't allow + or ! in path. --- src/main/java/org/bukkit/craftbukkit/Main.java | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src') diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java index 9ffd8977..5f1eedb8 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -134,6 +134,12 @@ public class Main { } else if (options.has("v")) { System.out.println(CraftServer.class.getPackage().getImplementationVersion()); } else { + // Do you love Java using + and ! as string based identifiers? I sure do! + String path = new File(".").getAbsolutePath(); + if (path.contains("!") || path.contains("+")) { + System.err.println("Cannot run server in a directory with ! or + in the pathname. Please rename the affected folders and try again,"); + } + try { // This trick bypasses Maven Shade's clever rewriting of our getProperty call when using String literals String jline_UnsupportedTerminal = new String(new char[] {'j','l','i','n','e','.','U','n','s','u','p','p','o','r','t','e','d','T','e','r','m','i','n','a','l'}); -- cgit v1.2.3