From 8a22afab638546c6f814347a2f4e5261af8591a4 Mon Sep 17 00:00:00 2001 From: Chaoscaot Date: Tue, 29 Jul 2025 11:05:46 +0200 Subject: [PATCH] Handle NullPointerException in `handleClick` method of SWAnvilInv to prevent crashes --- .../velocitycore/inventory/SWAnvilInv.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/VelocityCore/src/de/steamwar/velocitycore/inventory/SWAnvilInv.java b/VelocityCore/src/de/steamwar/velocitycore/inventory/SWAnvilInv.java index 213c1ee5..70d17045 100644 --- a/VelocityCore/src/de/steamwar/velocitycore/inventory/SWAnvilInv.java +++ b/VelocityCore/src/de/steamwar/velocitycore/inventory/SWAnvilInv.java @@ -36,17 +36,19 @@ public class SWAnvilInv { private static final HashMap openInv = new HashMap<>(); public static void handleClick(AnvilAnswerPacket packet) { - switch (packet.getAction()) { - case LEFT_CLICK: - openInv.get(packet.getPlayerId()).leftClickCallback.run(); - break; - case CLOSE: - openInv.remove(packet.getPlayerId()).closeCallback.run(); - break; - case ANSWER: - openInv.get(packet.getPlayerId()).callback.accept(packet.getText()); - break; - } + try { + switch (packet.getAction()) { + case LEFT_CLICK: + openInv.get(packet.getPlayerId()).leftClickCallback.run(); + break; + case CLOSE: + openInv.remove(packet.getPlayerId()).closeCallback.run(); + break; + case ANSWER: + openInv.get(packet.getPlayerId()).callback.accept(packet.getText()); + break; + } + } catch (NullPointerException ignored) { } } private final Player player;