Muqsit / PlayerVaults

Per-player GUI-based vaults plugin for PocketMine-MP
https://poggit.pmmp.io/p/PlayerVaults
GNU Lesser General Public License v2.1
41 stars 33 forks source link

Crashes when opening pv #47

Closed Matthww closed 6 years ago

Matthww commented 6 years ago

Whenever I try to open my pv now it will give me a crashdump

PocketMine-MP Crash Dump Wed Jan 24 12:33:24 CST 2018

Error: Argument 1 passed to pocketmine\inventory\BaseInventory::__construct() must implement interface pocketmine\inventory\InventoryHolder, instance of pocketmine\level\Position given, called in /home/matthew/1.2/plugins/PlayerVaults-master/src/PlayerVaults/VaultInventory.php on line 47
File: src/pocketmine/inventory/BaseInventory
Line: 57
Type: notice

Code:
[48]    /** @var InventoryHolder */
[49]    protected $holder;
[50] 
[51]    /**
[52]     * @param InventoryHolder $holder
[53]     * @param Item[]          $items
[54]     * @param int             $size
[55]     * @param string          $title
[56]     */
[57]    public function __construct(InventoryHolder $holder, array $items = [], int $size = null, string $title = null){
[58]        $this->holder = $holder;
[59] 
[60]        $this->slots = new \SplFixedArray($size ?? $this->getDefaultSize());
[61]        $this->title = $title ?? $this->getName();
[62] 
[63]        $this->setContents($items, false);
[64]    }
[65] 
[66]    abstract public function getName() : string;
[67] 

Backtrace:
#0 plugins/PlayerVaults-master/src/PlayerVaults/VaultInventory(47): pocketmine\inventory\BaseInventory->__construct(pocketmine\level\Position object, array Array(), integer 27)
#1 plugins/PlayerVaults-master/src/PlayerVaults/Provider(157): PlayerVaults\VaultInventory->__construct(pocketmine\level\Position object, string matthww, integer 1)
#2 plugins/PlayerVaults-master/src/PlayerVaults/Task/FetchInventoryTask(113): PlayerVaults\Provider->get(pocketmine\Player object, array Array(), integer 1, string matthww)
#3 src/pocketmine/scheduler/AsyncPool(164): PlayerVaults\Task\FetchInventoryTask->onCompletion(pocketmine\Server object)
#4 src/pocketmine/scheduler/ServerScheduler(342): pocketmine\scheduler\AsyncPool->collectTasks()
#5 src/pocketmine/Server(2536): pocketmine\scheduler\ServerScheduler->mainThreadHeartbeat(integer 5397)
#6 src/pocketmine/Server(2279): pocketmine\Server->tick()
#7 src/pocketmine/Server(2154): pocketmine\Server->tickProcessor()
#8 src/pocketmine/Server(1742): pocketmine\Server->start()
#9 src/pocketmine/PocketMine(553): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /home/matthew/1.2/, string /home/matthew/1.2/plugins/)

PocketMine-MP version: 1.7dev #0 [Protocol 160; API 3.0.0-ALPHA10]
Git commit: 0000000000000000000000000000000000000000
uname -a: Linux s98340 3.16.0-4-amd64 #1 SMP Debian 3.16.43-2+deb8u2 (2017-06-26) x86_64
PHP Version: 7.2.0RC6
Zend version: 3.2.0-dev
OS : Linux, linux
Muqsit commented 6 years ago

Discussed in #46, you need to update PocketMine. https://github.com/Muqsit/PlayerVaults/issues/46#issuecomment-360209322

Matthww commented 6 years ago

How did I miss that part 🤦‍♂️