PaperMC/CraftBukkit-Patches/0046-Fix-Broken-Async-Chat.patch
2016-03-03 03:46:56 -06:00

39 lines
1.4 KiB
Diff

From ae1236a4a4a148d9eb2e7be52b04eeef85ee54fc Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
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 0ab90f3..18358b4 100644
--- a/src/main/java/net/minecraft/server/PacketPlayInChat.java
+++ b/src/main/java/net/minecraft/server/PacketPlayInChat.java
@@ -24,7 +24,24 @@ public class PacketPlayInChat implements Packet<PacketListenerPlayIn> {
packetdataserializer.a(this.a);
}
- public void a(PacketListenerPlayIn packetlistenerplayin) {
+ // 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 a(final PacketListenerPlayIn packetlistenerplayin) {
+ if ( !a.startsWith("/") )
+ {
+ executors.submit( new Runnable()
+ {
+
+ @Override
+ public void run()
+ {
+ packetlistenerplayin.a( PacketPlayInChat.this );
+ }
+ } );
+ return;
+ }
+ // Spigot End
packetlistenerplayin.a(this);
}
--
2.5.0