From 039eb0ee9e4f3fc59c05a3664166af36edd0968b Mon Sep 17 00:00:00 2001 From: nossr50 Date: Mon, 13 Jul 2020 07:28:50 -0700 Subject: [PATCH] Fix array out of bounds --- Changelog.txt | 6 ++++++ pom.xml | 2 +- .../com/gmail/nossr50/listeners/InventoryListener.java | 7 ++++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Changelog.txt b/Changelog.txt index d2c0faedf..364bac92f 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,3 +1,9 @@ +Version 2.1.133 + A fix for an 'array out of bounds' error related to players clicking outside the inventory windows has been fixed + French locale has been updated (thanks Elikill58) + Another fix has been deployed to prevent mobs from having hearts in player death messages (thanks FrankHeijden) + Players no longer ready their tool if they don't have access to the skill (thanks Draycia) + Version 2.1.132 A fix is in place to prevent an exploit from working that is due to a yet to be patched Spigot server software bug Fixed a NPE that could happen when players swapped items from their hotbar diff --git a/pom.xml b/pom.xml index f46788bc8..dba5ae885 100755 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.gmail.nossr50.mcMMO mcMMO - 2.1.132 + 2.1.133-SNAPSHOT mcMMO https://github.com/mcMMO-Dev/mcMMO diff --git a/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java b/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java index b64246df2..823b1528f 100644 --- a/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java +++ b/src/main/java/com/gmail/nossr50/listeners/InventoryListener.java @@ -436,7 +436,12 @@ public class InventoryListener implements Listener { public void onInventoryClickEvent(InventoryClickEvent event) { SkillUtils.removeAbilityBuff(event.getCurrentItem()); if (event.getAction() == InventoryAction.HOTBAR_SWAP) { - if(event.getWhoClicked().getInventory().getItem(event.getHotbarButton()) != null) + if(event.getHotbarButton() == -1) + return; + + PlayerInventory playerInventory = event.getWhoClicked().getInventory(); + + if(playerInventory.getItem(event.getHotbarButton()) != null) SkillUtils.removeAbilityBuff(event.getWhoClicked().getInventory().getItem(event.getHotbarButton())); } }