diff --git a/ProtocolLib/src/main/java/com/comphenix/protocol/injector/netty/NettyProtocolInjector.java b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/netty/NettyProtocolInjector.java index 7350da72..7c52607f 100644 --- a/ProtocolLib/src/main/java/com/comphenix/protocol/injector/netty/NettyProtocolInjector.java +++ b/ProtocolLib/src/main/java/com/comphenix/protocol/injector/netty/NettyProtocolInjector.java @@ -45,7 +45,7 @@ public class NettyProtocolInjector implements ChannelListener { // The temporary player factory private TemporaryPlayerFactory playerFactory = new TemporaryPlayerFactory(); private List bootstrapFields = Lists.newArrayList(); - private BootstrapList networkManagers; + private List networkManagers; // Different sending filters private PacketTypeSet sendingFilters = new PacketTypeSet(); @@ -119,16 +119,16 @@ public class NettyProtocolInjector implements ChannelListener { for (VolatileField field : bootstrapFields) { final List list = (List) field.getValue(); - final BootstrapList bootstrap = new BootstrapList(list, connectionHandler); - - // Synchronize with each list before we attempt to replace them. - field.setValue(bootstrap); - + + // We don't have to override this list if (list == networkManagerList) { // Save it for later - networkManagers = bootstrap; + networkManagers = list; continue; } + + // Synchronize with each list before we attempt to replace them. + field.setValue(new BootstrapList(list, connectionHandler)); } injected = true;