From 0fee5ef447a6ba11b80e21c88b3a5453c2e4f67b Mon Sep 17 00:00:00 2001 From: gstio86 Date: Mon, 2 Jun 2025 22:55:43 +0800 Subject: [PATCH] Fix crash on dummy ClientPacketListener (#227) --- .../networking/client/ClientPlayNetworkHandlerMixin.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/fabric-networking-api-v1/src/client/java/net/fabricmc/fabric/mixin/networking/client/ClientPlayNetworkHandlerMixin.java b/fabric-networking-api-v1/src/client/java/net/fabricmc/fabric/mixin/networking/client/ClientPlayNetworkHandlerMixin.java index dacf8d77e..8e2998e07 100644 --- a/fabric-networking-api-v1/src/client/java/net/fabricmc/fabric/mixin/networking/client/ClientPlayNetworkHandlerMixin.java +++ b/fabric-networking-api-v1/src/client/java/net/fabricmc/fabric/mixin/networking/client/ClientPlayNetworkHandlerMixin.java @@ -49,8 +49,11 @@ protected ClientPlayNetworkHandlerMixin(Minecraft client, Connection connection, @Inject(method = "", at = @At("RETURN")) private void initAddon(CallbackInfo ci) { - Set channels = ChannelAttributes.getOrCreateCommonChannels(this.getConnection(), this.protocol()); - NeoClientCommonNetworking.onRegisterPacket((ClientPacketListener) (Object) this, channels); + Connection connection = this.getConnection(); + if (connection != null && connection.channel() != null) { + Set channels = ChannelAttributes.getOrCreateCommonChannels(connection, this.protocol()); + NeoClientCommonNetworking.onRegisterPacket((ClientPacketListener) (Object) this, channels); + } NeoClientPlayNetworking.setTempPacketListener((ClientPacketListener) (Object) this); ClientPlayConnectionEvents.INIT.invoker().onPlayInit((ClientPacketListener) (Object) this, this.minecraft);