From 319bc72726d38ce76125d54daa09cbf19fd1fa73 Mon Sep 17 00:00:00 2001 From: MartijnMuijsers Date: Tue, 29 Nov 2022 14:58:51 +0100 Subject: [PATCH] Remove tab complete executor --- .../0067-Remove-tab-complete-executor.patch | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 patches/server/0067-Remove-tab-complete-executor.patch diff --git a/patches/server/0067-Remove-tab-complete-executor.patch b/patches/server/0067-Remove-tab-complete-executor.patch new file mode 100644 index 0000000..f297310 --- /dev/null +++ b/patches/server/0067-Remove-tab-complete-executor.patch @@ -0,0 +1,29 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: MartijnMuijsers +Date: Tue, 29 Nov 2022 14:58:26 +0100 +Subject: [PATCH] Remove tab complete executor + +License: AGPL-3.0 (https://www.gnu.org/licenses/agpl-3.0.html) + +diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +index 8a191bf52554adde15c618c41d5e399f04963dbe..3b5d5f6929e88fd9f6b67d81732f0cb587138369 100644 +--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java ++++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +@@ -184,6 +184,7 @@ import net.minecraft.world.phys.shapes.BooleanOp; + import net.minecraft.world.phys.shapes.Shapes; + import net.minecraft.world.phys.shapes.VoxelShape; + import org.apache.commons.lang3.StringUtils; ++import org.galemc.gale.concurrent.AsyncExecutor; + import org.galemc.gale.concurrent.MinecraftServerBlockableEventLoop; + import org.galemc.gale.configuration.GaleGlobalConfiguration; + import org.slf4j.Logger; +@@ -867,8 +868,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic + } + + // Paper start +- private static final java.util.concurrent.ExecutorService TAB_COMPLETE_EXECUTOR = java.util.concurrent.Executors.newFixedThreadPool(4, +- new com.google.common.util.concurrent.ThreadFactoryBuilder().setDaemon(true).setNameFormat("Async Tab Complete Thread - #%d").setUncaughtExceptionHandler(new net.minecraft.DefaultUncaughtExceptionHandlerWithName(net.minecraft.server.MinecraftServer.LOGGER)).build()); ++ private static final java.util.concurrent.ExecutorService TAB_COMPLETE_EXECUTOR = AsyncExecutor.instance; // Gale - centralized async execution - remove tab complete executor + // Paper end + @Override + public void handleCustomCommandSuggestions(ServerboundCommandSuggestionPacket packet) {