From 756840f11dc4378d08ed529c5e98839732c7df40 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sun, 2 Aug 2020 23:07:47 +0100 Subject: [PATCH] Fixed matchItems corrupting CraftingTransaction internal state on repeated validation This bug became apparent while developing a more robust fix for 1.16 crafting. --- src/pocketmine/inventory/transaction/InventoryTransaction.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/pocketmine/inventory/transaction/InventoryTransaction.php b/src/pocketmine/inventory/transaction/InventoryTransaction.php index 76c536021..b85395785 100644 --- a/src/pocketmine/inventory/transaction/InventoryTransaction.php +++ b/src/pocketmine/inventory/transaction/InventoryTransaction.php @@ -136,6 +136,8 @@ class InventoryTransaction{ * @throws TransactionValidationException */ protected function matchItems(array &$needItems, array &$haveItems) : void{ + $needItems = []; + $haveItems = []; foreach($this->actions as $key => $action){ if(!$action->getTargetItem()->isNull()){ $needItems[] = $action->getTargetItem();