From 66513025c76173c43d4e32139bc789ee3690de3a Mon Sep 17 00:00:00 2001 From: TheMode Date: Tue, 20 Apr 2021 07:32:53 +0200 Subject: [PATCH] Fix thread safety with inventory click, add Internal annotation --- .../server/inventory/click/InventoryClickProcessor.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/net/minestom/server/inventory/click/InventoryClickProcessor.java b/src/main/java/net/minestom/server/inventory/click/InventoryClickProcessor.java index ffa056637..3b969f408 100644 --- a/src/main/java/net/minestom/server/inventory/click/InventoryClickProcessor.java +++ b/src/main/java/net/minestom/server/inventory/click/InventoryClickProcessor.java @@ -15,21 +15,23 @@ import net.minestom.server.inventory.condition.InventoryConditionResult; import net.minestom.server.item.ItemStack; import net.minestom.server.item.StackingRule; import net.minestom.server.utils.inventory.PlayerInventoryUtils; +import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.concurrent.ConcurrentHashMap; import java.util.function.BiConsumer; import java.util.function.BiFunction; +@ApiStatus.Internal public class InventoryClickProcessor { // Dragging maps - private final Map leftDraggingMap = new HashMap<>(); - private final Map rightDraggingMap = new HashMap<>(); + private final Map leftDraggingMap = new ConcurrentHashMap<>(); + private final Map rightDraggingMap = new ConcurrentHashMap<>(); @NotNull public InventoryClickResult leftClick(@Nullable Inventory inventory, @NotNull Player player, int slot,