BlockHorizons / InvSee

A PocketMine-MP plugin that lets you view and modify offline and online players' inventories in real-time!
https://poggit.pmmp.io/p/InvSee
Apache License 2.0
30 stars 14 forks source link

Internal Server Error #27

Closed Bruhh1234 closed 2 years ago

Bruhh1234 commented 4 years ago

[16:51:44] [Server thread/CRITICAL]: ErrorException: "Undefined index: bruhh" (EXCEPTION) in "plugins/InvSee.phar/src/BlockHorizons/InvSee/InventoryHandler" at line 70

When is Close With the x then give me a internal server error

teracube commented 3 years ago

@Muqsit @SOF3 same issue Bedrock Edition server version v1.16.220 crash server https://jenkins.pmmp.io/job/PocketMine-MP/lastSuccessfulBuild/artifact/PocketMine-MP.phar https://poggit.pmmp.io/r/95959/InvSee_dev-35.phar

1-04-11 [16:11:39] [Server thread/CRITICAL]: ErrorException: "Undefined index: prius75" (EXCEPTION) in "plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/InventoryHandler" at line 70
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #0 plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/InventoryHandler(70): pocketmine\utils\Utils::errorExceptionHandler(integer 8, string[26] Undefined index: prius75, string[95] phar:///home/container/plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/Inven, integer 70, array[3])
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #1 plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/libs/muqsit/invmenu/inventories/BaseFakeInventory(101): BlockHorizons\InvSee\InventoryHandler->onInventoryClose(object pocketmine\Player, object BlockHorizons\InvSee\inventories\InvSeePlayerInventory)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #2 pmsrc/src/pocketmine/inventory/BaseInventory(412): BlockHorizons\InvSee\libs\muqsit\invmenu\inventories\BaseFakeInventory->onClose(object pocketmine\Player)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #3 pmsrc/src/pocketmine/Player(4136): pocketmine\inventory\BaseInventory->close(object pocketmine\Player)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #4 pmsrc/src/pocketmine/Player(4154): pocketmine\Player->removeWindow(object BlockHorizons\InvSee\inventories\InvSeePlayerInventory, boolean 1)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #5 pmsrc/src/pocketmine/Player(3730): pocketmine\Player->removeAllWindows(boolean 1)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #6 pmsrc/src/pocketmine/network/mcpe/RakLibInterface(176): pocketmine\Player->close(object pocketmine\lang\TranslationContainer, string[21] Internal server error)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #7 pmsrc/vendor/pocketmine/raklib/src/server/ServerHandler(95): pocketmine\network\mcpe\RakLibInterface->handleEncapsulated(string[20] 184.1XXX.XX.124 59764, object raklib\protocol\EncapsulatedPacket, integer 0)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #8 pmsrc/src/pocketmine/network/mcpe/RakLibInterface(109): raklib\server\ServerHandler->handlePacket()
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #9 pmsrc/src/pocketmine/network/mcpe/RakLibInterface(99): pocketmine\network\mcpe\RakLibInterface->process()
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #10 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(113): pocketmine\network\mcpe\RakLibInterface->pocketmine\network\mcpe\{closure}()
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #11 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(75): pocketmine\snooze\SleeperHandler->processNotifications()
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #12 pmsrc/src/pocketmine/Server(2155): pocketmine\snooze\SleeperHandler->sleepUntil(double 1618150299.2666)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #13 pmsrc/src/pocketmine/Server(1992): pocketmine\Server->tickProcessor()
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #14 pmsrc/src/pocketmine/Server(1586): pocketmine\Server->start()
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #15 pmsrc/src/pocketmine/PocketMine(291): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[16] /home/container/, string[24] /home/container/plugins/)
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #16 pmsrc/src/pocketmine/PocketMine(321): pocketmine\server()
2021-04-11 [16:11:39] [Server thread/CRITICAL]: #17 pmsrc(11): require(string[71] phar:///home/container/PocketMine-MP.phar/src/pocketmine/PocketMine.php)
2021-04-11 [16:11:39] [Server thread/EMERGENCY]: An unrecoverable error has occurred and the server has crashed. Creating a crash dump
2021-04-11 [16:11:39] [Server thread/EMERGENCY]: Please upload the "/home/container/crashdumps/Sun_Apr_11-16.11.39-CEST_2021.log" file to the Crash Archive and submit the link to the Bug Reporting page. Give as much info as you can.
2021-04-11 [16:11:39] [Server thread/EMERGENCY]: The crash dump has been automatically submitted to the Crash Archive. You can view it on https://crash.pmmp.io/view/4879434 or use the ID #4879434.
PocketMine-MP Crash Dump Sun Apr 11 16:11:39 CEST 2021

Error: Undefined index: prius75
File: plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/InventoryHandler
Line: 70
Type: ErrorException

THIS CRASH WAS CAUSED BY A PLUGIN
BAD PLUGIN: InvSee v1.0.0

Code:
[61]                if($menu_inventory->canSpyInventory($inventory)) {
[62]                    $menu_inventory->syncPlayerAction($action);
[63]                }
[64]            }
[65]        }
[66]    }
[67] 
[68]    public function onInventoryClose(Player $player, InvSeeInventory $inventory): void {
[69]        if(count($inventory->getViewers()) <= 1) {
[70]            if($this->spying[$key = strtolower($inventory->getSpying())]->getPlayer() === null) {
[71]                $inventory->syncOffline();
[72]            }
[73] 
[74]            $this->spying[$key]->remove($inventory);
[75]            if($this->spying[$key]->isEmpty()) {
[76]                unset($this->spying[$key]);
[77]            }
[78]        }
[79]    }
[80] 

Backtrace:
#0 plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/InventoryHandler(70): pocketmine\utils\Utils::errorExceptionHandler(integer 8, string[26] Undefined index: prius75, string[95] phar:///home/container/plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/Inven, integer 70, array[3])
#1 plugins/InvSee_dev-35.phar/src/BlockHorizons/InvSee/libs/muqsit/invmenu/inventories/BaseFakeInventory(101): BlockHorizons\InvSee\InventoryHandler->onInventoryClose(object pocketmine\Player, object BlockHorizons\InvSee\inventories\InvSeePlayerInventory)
#2 pmsrc/src/pocketmine/inventory/BaseInventory(412): BlockHorizons\InvSee\libs\muqsit\invmenu\inventories\BaseFakeInventory->onClose(object pocketmine\Player)
#3 pmsrc/src/pocketmine/Player(4136): pocketmine\inventory\BaseInventory->close(object pocketmine\Player)
#4 pmsrc/src/pocketmine/Player(4154): pocketmine\Player->removeWindow(object BlockHorizons\InvSee\inventories\InvSeePlayerInventory, boolean 1)
#5 pmsrc/src/pocketmine/Player(3730): pocketmine\Player->removeAllWindows(boolean 1)
#6 pmsrc/src/pocketmine/network/mcpe/RakLibInterface(176): pocketmine\Player->close(object pocketmine\lang\TranslationContainer, string[21] Internal server error)
#7 pmsrc/vendor/pocketmine/raklib/src/server/ServerHandler(95): pocketmine\network\mcpe\RakLibInterface->handleEncapsulated(string[20] 184.161.20.124 59764, object raklib\protocol\EncapsulatedPacket, integer 0)
#8 pmsrc/src/pocketmine/network/mcpe/RakLibInterface(109): raklib\server\ServerHandler->handlePacket()
#9 pmsrc/src/pocketmine/network/mcpe/RakLibInterface(99): pocketmine\network\mcpe\RakLibInterface->process()
#10 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(113): pocketmine\network\mcpe\RakLibInterface->pocketmine\network\mcpe\{closure}()
#11 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(75): pocketmine\snooze\SleeperHandler->processNotifications()
#12 pmsrc/src/pocketmine/Server(2155): pocketmine\snooze\SleeperHandler->sleepUntil(double 1618150299.2666)
#13 pmsrc/src/pocketmine/Server(1992): pocketmine\Server->tickProcessor()
#14 pmsrc/src/pocketmine/Server(1586): pocketmine\Server->start()
#15 pmsrc/src/pocketmine/PocketMine(291): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[16] /home/container/, string[24] /home/container/plugins/)
#16 pmsrc/src/pocketmine/PocketMine(321): pocketmine\server()
#17 pmsrc(11): require(string[71] phar:///home/container/PocketMine-MP.phar/src/pocketmine/PocketMine.php)

PocketMine-MP version: 3.19.0 [Protocol 431]
Git commit: b307cd0aa15b76cfe41d2a649d14b3aa6fb78f64
uname -a: Linux 643340b8-28d5-4090-bb05-7e3ac9a12b14 5.9.0-050900-generic #202010112230 SMP Sun Oct 11 22:34:01 UTC 2020 x86_64
PHP Version: 7.3.16
Zend version: 3.3.16
OS : Linux, linux
Composer libraries: 
- adhocore/json-comment 1.1.0@cf7998124d1050b83d7d985447fefd630e09c1a2
- daverandom/callback-validator unknown@unknown
- pocketmine/binaryutils 0.1.13@0abee38d4e2861621f262c79a2a3d699d8a697f4
- pocketmine/callback-validator 1.0.3@64787469766bcaa7e5885242e85c23c25e8c55a2
- pocketmine/classloader 0.1.2@9757928424652393b178a3760073113aa7c9911b
- pocketmine/log 0.2.1@830b44a2cf96ef703c550abe64302f230231ca49
- pocketmine/log-pthreads 0.1.3@e477ecf6ec214fdd4415ea1da3fdd9d73bf699ea
- pocketmine/math 0.2.6@43057cb8c179a9859677b496a788db922fd5cfc3
- pocketmine/nbt 0.2.18@9f82ca4d7f97fcd9a566e44b63c4f18a7657ae82
- pocketmine/pocketmine-mp 3.19.0@b307cd0aa15b76cfe41d2a649d14b3aa6fb78f64
- pocketmine/raklib 0.12.11@9cce458b8bfde3e4dfdbf70c659fc7b7fe26b5c4
- pocketmine/snooze 0.1.5@70b5e7937a06878dd321a3182ceb76d56298f2cd
- pocketmine/spl 0.4.2@6b08b7cf8c4afa17139c9a1b3bf1b408531de161
Muqsit commented 2 years ago

Addressed in PM4-supported version (v2.0.1, https://github.com/BlockHorizons/InvSee/commit/8b46af9bd4cfabe5973fa151de3b0ba12cf1bf4c)