Closed xodamcm closed 2 years ago
PocketMine-MP Crash Dump Mon May 9 10:53:57 UTC 2022
PocketMine-MP version: 4.3.1 [Protocol 503] Git commit: f7dce4af8802ce28a8286e1c8002af19cf986c62 PHP version: 8.0.17 OS: Linux, linux
THIS CRASH WAS CAUSED BY A PLUGIN BAD PLUGIN: StackStorage
Error: Undefined array key "nbt_b64" File: plugins/StackStorage_v1.3.3/src/ree_jp/stackstorage/api/StackStorageAPI Line: 93 Type: ErrorException Backtrace:
Code: [84] */ [85] public function add(string $xuid, Item $item): void [86] { [87] $item = $this->setStoredNbtTag($item); [88] if (!$item instanceof Item) return; [89] [90] $storage = $this->getStorage($xuid); [91] if ($storage instanceof StackStorageService) { [92] $has = false; [93] $json = $item->jsonSerialize()["nbt_b64"] ?: null; [94] foreach ($storage->items as $key => $storageItem) { [95] if ($storageItem->equals($item)) { [96] $storageJson = $storageItem->jsonSerialize()["nbt_b64"] ?: null; [97] if ($json !== $storageJson) continue; [98] [99] $has = true; [100] $storage->items[$key] = $storageItem->setCount($item->getCount() + $storageItem->getCount()); [101] } [102] } [103] if (!$has) {
Correction. Thanks for the report.
PocketMine-MP Crash Dump Mon May 9 10:53:57 UTC 2022
PocketMine-MP version: 4.3.1 [Protocol 503] Git commit: f7dce4af8802ce28a8286e1c8002af19cf986c62 PHP version: 8.0.17 OS: Linux, linux
THIS CRASH WAS CAUSED BY A PLUGIN BAD PLUGIN: StackStorage
Error: Undefined array key "nbt_b64" File: plugins/StackStorage_v1.3.3/src/ree_jp/stackstorage/api/StackStorageAPI Line: 93 Type: ErrorException Backtrace:
0 plugins/StackStorage_v1.3.3/src/ree_jp/stackstorage/api/StackStorageAPI(93): pocketmine\errorhandler\ErrorToExceptionHandler::handle(integer 2, string[29] Undefined array key "nbt_b64", string[91] /home/container/plugins/StackStorage_v1.3.3/src/ree_jp/stackstorage/api/StackSto, integer 93)
1 plugins/StackStorage_v1.3.3/src/ree_jp/stackstorage/StackStorageService(127): ree_jp\stackstorage\api\StackStorageAPI->add(string[16] 2535447776199012, object pocketmine\item\BlazeRod#243555)
2 plugins/StackStorage_v1.3.3/src/ree_jp/stackstorage/libs/muqsit/invmenu/InvMenu(166): ree_jp\stackstorage\StackStorageService->onTransaction(object ree_jp\stackstorage\libs\muqsit\invmenu\transaction\SimpleInvMenuTransaction#245700)
3 plugins/StackStorage_v1.3.3/src/ree_jp/stackstorage/libs/muqsit/invmenu/InvMenuEventHandler(105): ree_jp\stackstorage\libs\muqsit\invmenu\InvMenu->handleInventoryTransaction(object pocketmine\player\Player#245070, object pocketmine\item\ItemBlock#217835, object pocketmine\item\BlazeRod#242250, object pocketmine\inventory\transaction\action\SlotChangeAction#247431, object pocketmine\inventory\transaction\InventoryTransaction#138010)
4 pmsrc/src/event/RegisteredListener(75): ree_jp\stackstorage\libs\muqsit\invmenu\InvMenuEventHandler->onInventoryTransaction(object pocketmine\event\inventory\InventoryTransactionEvent#211411)
5 pmsrc/src/event/Event(62): pocketmine\event\RegisteredListener->callEvent(object pocketmine\event\inventory\InventoryTransactionEvent#211411)
6 pmsrc/src/inventory/transaction/InventoryTransaction(294): pocketmine\event\Event->call()
7 pmsrc/src/inventory/transaction/InventoryTransaction(312): pocketmine\inventory\transaction\InventoryTransaction->callExecuteEvent()
8 pmsrc/src/network/mcpe/handler/InGamePacketHandler(403): pocketmine\inventory\transaction\InventoryTransaction->execute()
9 pmsrc/src/network/mcpe/handler/InGamePacketHandler(298): pocketmine\network\mcpe\handler\InGamePacketHandler->handleNormalTransaction(object pocketmine\network\mcpe\protocol\types\inventory\NormalTransactionData#162322)
10 plugins/VanillaX_v3.0.0/src/CLADevs/VanillaX/network/InGamePacketHandlerX(205): pocketmine\network\mcpe\handler\InGamePacketHandler->handleInventoryTransaction(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket#161356)
11 pmsrc/vendor/pocketmine/bedrock-protocol/src/InventoryTransactionPacket(105): CLADevs\VanillaX\network\InGamePacketHandlerX->handleInventoryTransaction(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket#161356)
12 pmsrc/src/network/mcpe/NetworkSession(398): pocketmine\network\mcpe\protocol\InventoryTransactionPacket->handle(object CLADevs\VanillaX\network\InGamePacketHandlerX#206569)
13 pmsrc/src/network/mcpe/NetworkSession(361): pocketmine\network\mcpe\NetworkSession->handleDataPacket(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket#161356, string[49] .................................................)
14 pmsrc/src/network/mcpe/raklib/RakLibInterface(192): pocketmine\network\mcpe\NetworkSession->handleEncoded(string[24] 3.c``b...p..........<.a.)
15 pmsrc/vendor/pocketmine/raklib-ipc/src/RakLibToUserThreadMessageReceiver(42): pocketmine\network\mcpe\raklib\RakLibInterface->onPacketReceive(integer 0, string[33] ..9..(.vB.....i..z.~.ow{..nzH`.a.)
16 pmsrc/src/network/mcpe/raklib/RakLibInterface(122): raklib\server\ipc\RakLibToUserThreadMessageReceiver->handle(object pocketmine\network\mcpe\raklib\RakLibInterface#103271)
17 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(123): pocketmine\network\mcpe\raklib\RakLibInterface->pocketmine\network\mcpe\raklib{closure}()
18 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(82): pocketmine\snooze\SleeperHandler->processNotifications()
19 pmsrc/src/Server(1661): pocketmine\snooze\SleeperHandler->sleepUntil(double 1652093637.9846)
20 pmsrc/src/Server(1047): pocketmine\Server->tickProcessor()
21 pmsrc/src/PocketMine(304): pocketmine\Server->__construct(object BaseClassLoader#2, object pocketmine\utils\MainLogger#3, string[16] /home/container/, string[24] /home/container/plugins/)
22 pmsrc/src/PocketMine(327): pocketmine\server()
23 pmsrc(11): require(string[60] phar:///home/container/PocketMine-MP.phar/src/PocketMine.php)
Code: [84] */ [85] public function add(string $xuid, Item $item): void [86] { [87] $item = $this->setStoredNbtTag($item); [88] if (!$item instanceof Item) return; [89] [90] $storage = $this->getStorage($xuid); [91] if ($storage instanceof StackStorageService) { [92] $has = false; [93] $json = $item->jsonSerialize()["nbt_b64"] ?: null; [94] foreach ($storage->items as $key => $storageItem) { [95] if ($storageItem->equals($item)) { [96] $storageJson = $storageItem->jsonSerialize()["nbt_b64"] ?: null; [97] if ($json !== $storageJson) continue; [98] [99] $has = true; [100] $storage->items[$key] = $storageItem->setCount($item->getCount() + $storageItem->getCount()); [101] } [102] } [103] if (!$has) {