aboutsummaryrefslogtreecommitdiffhomepage
path: root/CraftBukkit-Patches/0058-Fix-Broken-Async-Chat.patch
diff options
context:
space:
mode:
Diffstat (limited to 'CraftBukkit-Patches/0058-Fix-Broken-Async-Chat.patch')
-rw-r--r--CraftBukkit-Patches/0058-Fix-Broken-Async-Chat.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/CraftBukkit-Patches/0058-Fix-Broken-Async-Chat.patch b/CraftBukkit-Patches/0058-Fix-Broken-Async-Chat.patch
new file mode 100644
index 0000000000..1181094093
--- /dev/null
+++ b/CraftBukkit-Patches/0058-Fix-Broken-Async-Chat.patch
@@ -0,0 +1,40 @@
+From 75d7f44f8527bf3ed7c77c4b1da4991138cb2710 Mon Sep 17 00:00:00 2001
+From: md_5 <[email protected]>
+Date: Thu, 5 Dec 2013 13:55:53 +1100
+Subject: [PATCH] Fix Broken Async Chat
+
+
+diff --git a/src/main/java/net/minecraft/server/PacketPlayInChat.java b/src/main/java/net/minecraft/server/PacketPlayInChat.java
+index 604a7af..d419f0f 100644
+--- a/src/main/java/net/minecraft/server/PacketPlayInChat.java
++++ b/src/main/java/net/minecraft/server/PacketPlayInChat.java
+@@ -43,7 +43,25 @@ public class PacketPlayInChat extends Packet {
+ }
+ // CraftBukkit end
+
+- public void handle(PacketListener packetlistener) {
++ // Spigot Start
++ private static final java.util.concurrent.ExecutorService executors = java.util.concurrent.Executors.newCachedThreadPool(
++ new com.google.common.util.concurrent.ThreadFactoryBuilder().setDaemon( true ).setNameFormat( "Async Chat Thread - #%d" ).build() );
++ public void handle(final PacketListener packetlistener)
++ {
++ if ( a() )
++ {
++ executors.submit( new Runnable()
++ {
++
++ @Override
++ public void run()
++ {
++ PacketPlayInChat.this.a( (PacketPlayInListener) packetlistener );
++ }
++ } );
++ return;
++ }
++ // Spigot End
+ this.a((PacketPlayInListener) packetlistener);
+ }
+ }
+--
+1.9.1
+