From a2ecea3ff10bfff39e6aa12c35588f7d98ac1cd7 Mon Sep 17 00:00:00 2001 From: linsaftw Date: Mon, 27 Oct 2025 18:56:26 -0300 Subject: [PATCH 1/2] check if channel is active before injecting on velocity --- .../geysermc/floodgate/inject/velocity/VelocityInjector.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java b/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java index 4d122cf16..3c6cb6ca1 100644 --- a/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java +++ b/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java @@ -100,6 +100,9 @@ private static final class VelocityChannelInitializer extends ChannelInitializer @Override protected void initChannel(Channel channel) { + if (!channel.isActive()) { + return; + } invoke(original, initChannel, channel); injector.injectAddonsCall(channel, proxyToServer); From 5865ffe8bbca51f9430c901b2f90b6c6b9cb09fb Mon Sep 17 00:00:00 2001 From: Juan Cruz Linsalata <25271111+linsaftw@users.noreply.github.com> Date: Sat, 1 Nov 2025 12:22:26 -0300 Subject: [PATCH 2/2] Properly run isActive check after original invoke --- .../geysermc/floodgate/inject/velocity/VelocityInjector.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java b/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java index 3c6cb6ca1..5a5f30e19 100644 --- a/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java +++ b/velocity/src/main/java/org/geysermc/floodgate/inject/velocity/VelocityInjector.java @@ -100,10 +100,11 @@ private static final class VelocityChannelInitializer extends ChannelInitializer @Override protected void initChannel(Channel channel) { + invoke(original, initChannel, channel); + // Was closed by another handler? if (!channel.isActive()) { return; } - invoke(original, initChannel, channel); injector.injectAddonsCall(channel, proxyToServer); injector.addInjectedClient(channel);