jasonw4331 / MyPlot

Plot and protection plugin for PocketMine-MP
https://discord.gg/Qqcpp9Q
MIT License
101 stars 90 forks source link

Position World Is Null #428

Closed GalonAquaa closed 3 years ago

GalonAquaa commented 3 years ago

Crashdump:

Error: Position world is null
File: pmsrc/src/pocketmine/level/Position
Line: 83
Type: pocketmine\utils\AssumptionFailedError

A PLUGIN WAS INVOLVED IN THIS CRASH
BAD PLUGIN: MyPlot v2.0.1

Code:
[74] 
[75]    /**
[76]     * Returns the position's world if valid. Throws an error if the world is unexpectedly null.
[77]     *
[78]     * @throws AssumptionFailedError
[79]     */
[80]    public function getLevelNonNull() : Level{
[81]        $world = $this->getLevel();
[82]        if($world === null){
[83]            throw new AssumptionFailedError("Position world is null");
[84]        }
[85]        return $world;
[86]    }
[87] 
[88]    /**
[89]     * Sets the target Level of the position.
[90]     *
[91]     * @return $this
[92]     *
[93]     * @throws \InvalidArgumentException if the specified Level has been closed

Backtrace:
#0 plugins/MyPlot-master/src/MyPlot/EventListener(324): pocketmine\level\Position->getLevelNonNull()
#1 plugins/MyPlot-master/src/MyPlot/EventListener(315): MyPlot\EventListener->onEventOnMove(object pocketmine\Player, object pocketmine\event\entity\EntityTeleportEvent)
#2 pmsrc/src/pocketmine/plugin/MethodEventExecutor(42): MyPlot\EventListener->onPlayerTeleport(object pocketmine\event\entity\EntityTeleportEvent)
#3 pmsrc/src/pocketmine/plugin/RegisteredListener(80): pocketmine\plugin\MethodEventExecutor->execute(object MyPlot\EventListener, object pocketmine\event\entity\EntityTeleportEvent)
#4 pmsrc/src/pocketmine/event/Event(88): pocketmine\plugin\RegisteredListener->callEvent(object pocketmine\event\entity\EntityTeleportEvent)
#5 pmsrc/src/pocketmine/entity/Entity(1877): pocketmine\event\Event->call()
#6 pmsrc/src/pocketmine/Player(3993): pocketmine\entity\Entity->teleport(object pocketmine\level\Location, double 87.177703857422, double 3.0507507324219)
#7 plugins/KejuTutorial/src/GalonAquaa/KejuTutorial/KejuTutorialPlugin(74): pocketmine\Player->teleport(object pocketmine\level\Location)
#8 pmsrc/src/pocketmine/scheduler/ClosureTask(61): GalonAquaa\KejuTutorial\KejuTutorialPlugin->GalonAquaa\KejuTutorial\{closure}(integer 86798)
#9 pmsrc/src/pocketmine/scheduler/TaskHandler(137): pocketmine\scheduler\ClosureTask->onRun(integer 86798)
#10 pmsrc/src/pocketmine/scheduler/TaskScheduler(179): pocketmine\scheduler\TaskHandler->run(integer 86798)
#11 pmsrc/src/pocketmine/plugin/PluginManager(654): pocketmine\scheduler\TaskScheduler->mainThreadHeartbeat(integer 86798)
#12 pmsrc/src/pocketmine/Server(2389): pocketmine\plugin\PluginManager->tickSchedulers(integer 86798)
#13 pmsrc/src/pocketmine/Server(2152): pocketmine\Server->tick()
#14 pmsrc/src/pocketmine/Server(1992): pocketmine\Server->tickProcessor()
#15 pmsrc/src/pocketmine/Server(1586): pocketmine\Server->start()
#16 pmsrc/src/pocketmine/PocketMine(311): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[13] /root/KejuPM/, string[21] /root/KejuPM/plugins/)
#17 pmsrc/src/pocketmine/PocketMine(341): pocketmine\server()
#18 pmsrc(11): require(string[68] phar:///root/KejuPM/PocketMine-MP.phar/src/pocketmine/PocketMine.php)

PocketMine-MP version: 3.22.1 [Protocol 448]
Git commit: 9477034a4ae58cc5c12b8278c14a8e46a43992b2
uname -a: Linux Shosting 4.15.0-153-generic #160-Ubuntu SMP Thu Jul 29 06:54:29 UTC 2021 x86_64
PHP Version: 7.4.22
Zend version: 3.4.0
OS : Linux, linux
Composer libraries: 
- adhocore/json-comment 1.1.2@fc2f76979f0a44a5f5bc2a2b600d0762fe0e78e7
- 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.22.1@9477034a4ae58cc5c12b8278c14a8e46a43992b2
- pocketmine/raklib 0.12.11@9cce458b8bfde3e4dfdbf70c659fc7b7fe26b5c4
- pocketmine/snooze 0.1.5@70b5e7937a06878dd321a3182ceb76d56298f2cd
- pocketmine/spl 0.4.2@6b08b7cf8c4afa17139c9a1b3bf1b408531de161
jasonw4331 commented 3 years ago

That crash was caused by KejuTutorialPlugin, not MyPlot

GalonAquaa commented 3 years ago

That crash was caused by KejuTutorialPlugin, not MyPlot

ah sorry, I noticed earlier, but forgot to close the issue, thank you