From 42e200ac7ad24c7e628fc7033e553166dbdfec44 Mon Sep 17 00:00:00 2001 From: BallOfEnergy <66693744+BallOfEnergy1@users.noreply.github.com> Date: Sun, 13 Oct 2024 17:04:36 -0500 Subject: [PATCH] just some final tweaks to make sure that I don't fuck anything up --- .../java/com/hbm/packet/toclient/BufPacket.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/hbm/packet/toclient/BufPacket.java b/src/main/java/com/hbm/packet/toclient/BufPacket.java index c66ce6bdc..383f9dd71 100644 --- a/src/main/java/com/hbm/packet/toclient/BufPacket.java +++ b/src/main/java/com/hbm/packet/toclient/BufPacket.java @@ -8,8 +8,8 @@ import cpw.mods.fml.common.network.simpleimpl.MessageContext; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.tileentity.TileEntity; - -import java.nio.BufferOverflowException; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class BufPacket implements IMessage { @@ -55,7 +55,15 @@ public class BufPacket implements IMessage { TileEntity te = Minecraft.getMinecraft().theWorld.getTileEntity(m.x, m.y, m.z); if (te instanceof IBufPacketReceiver) { - ((IBufPacketReceiver) te).deserialize(m.buf); + try { + ((IBufPacketReceiver) te).deserialize(m.buf); + } catch(Exception e) { // just in case I fucked up + Logger logger = LogManager.getLogger("HBM"); + logger.warn("A ByteBuf packet failed to be read and has thrown an error. This normally means that there was a buffer underflow and more data was read than was actually in the packet."); + logger.warn("Tile: {}", te.getBlockType().getUnlocalizedName()); + logger.warn(e.getMessage()); + + } } return null;