aboutsummaryrefslogtreecommitdiffhomepage
path: root/Spigot-Server-Patches
diff options
context:
space:
mode:
Diffstat (limited to 'Spigot-Server-Patches')
-rw-r--r--Spigot-Server-Patches/0213-Workaround-for-jansi-bug-with-Windows.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/Spigot-Server-Patches/0213-Workaround-for-jansi-bug-with-Windows.patch b/Spigot-Server-Patches/0213-Workaround-for-jansi-bug-with-Windows.patch
new file mode 100644
index 0000000000..6daac74973
--- /dev/null
+++ b/Spigot-Server-Patches/0213-Workaround-for-jansi-bug-with-Windows.patch
@@ -0,0 +1,29 @@
+From 623e6cf1ce179cf97a4c030edfb5671ace6ba6d9 Mon Sep 17 00:00:00 2001
+From: Shane Freeder <[email protected]>
+Date: Wed, 17 May 2017 17:45:19 -0500
+Subject: [PATCH] Workaround for jansi bug with Windows
+
+When jansi attempts to extract its natives, by default it tries to extract a specific version
+using the loading class's implementation version. Normally this works completely fine
+however when on Windows certain characters such as - and : can trigger special behaviour.
+
+Furthermore this behaviour only occurs in specific combinations due to the parsing done by jansi.
+For example test-test works fine, but test-test-test does not! In order to avoid this all together but
+still keep our versions the same as they were, we set the override property to the essentially garbage version
+Paper. This version is only used when extracting the libraries to their temp folder.
+
+diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
+index 33e5dd504..a2f1eb7eb 100644
+--- a/src/main/java/org/bukkit/craftbukkit/Main.java
++++ b/src/main/java/org/bukkit/craftbukkit/Main.java
+@@ -182,6 +182,7 @@ public class Main {
+ }
+
+ if (useJline) {
++ System.setProperty( "library.jansi.version", "Paper" ); // Paper - set jansi library version to avoid crash
+ AnsiConsole.systemInstall();
+ } else {
+ // This ensures the terminal literal will always match the jline implementation
+--
+2.13.0
+