inxomnyaa / MagicWE

Lag free asynchronous world editor for PMMP with plenty of options
https://poggit.pmmp.io/ci/inxomnyaa/MagicWE
GNU General Public License v3.0
101 stars 83 forks source link

ErrorException: "array_rand(): Array is empty" (EXCEPTION) in "plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask" at line 103 #125

Closed teracube closed 5 years ago

teracube commented 5 years ago

issue or bad argument ?

2019-08-13 [19:09:38] [Server thread/INFO]: [Commandlook] Andy77> //brush
2019-08-13 [19:10:06] [Asynchronous Worker #0 thread/CRITICAL]: ErrorException: "array_rand(): Array is empty" (EXCEPTION) in "plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask" at line 103
2019-08-13 [19:10:06] [Asynchronous Worker #0 thread/DEBUG]: #0 (): pocketmine\utils\Utils::errorExceptionHandler(integer 2, string[28] array_rand(): Array is empty, string[116] phar:///home/gsp_1485/g4.hmserv.eu-19140/plugins/MagicWE2_dev-167.phar/src/xenia, integer 103, array[10])
2019-08-13 [19:10:06] [Asynchronous Worker #0 thread/DEBUG]: #1 plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask(103): array_rand(array[0], integer 1)
2019-08-13 [19:10:06] [Asynchronous Worker #0 thread/DEBUG]: #2 plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask(66): xenialdan\MagicWE2\task\AsyncFillTask->editBlocks(object xenialdan\MagicWE2\shape\Sphere, object xenialdan\MagicWE2\AsyncChunkManager, array[0])
2019-08-13 [19:10:06] [Asynchronous Worker #0 thread/DEBUG]: #3 src/pocketmine/scheduler/AsyncTask(75): xenialdan\MagicWE2\task\AsyncFillTask->onRun()
2019-08-13 [19:10:06] [Asynchronous Worker #0 thread/DEBUG]: #4 (): pocketmine\scheduler\AsyncTask->run()
2019-08-13 [19:10:06] [Server thread/CRITICAL]: Could not execute asynchronous task AsyncFillTask: Task crashed
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/CRITICAL]: ErrorException: "array_rand(): Array is empty" (EXCEPTION) in "plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask" at line 103
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #0 (): pocketmine\utils\Utils::errorExceptionHandler(integer 2, string[28] array_rand(): Array is empty, string[116] phar:///home/gsp_1485/g4.hmserv.eu-19140/plugins/MagicWE2_dev-167.phar/src/xenia, integer 103, array[10])
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #1 plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask(103): array_rand(array[0], integer 1)
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #2 plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask(66): xenialdan\MagicWE2\task\AsyncFillTask->editBlocks(object xenialdan\MagicWE2\shape\Sphere, object xenialdan\MagicWE2\AsyncChunkManager, array[0])
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #3 src/pocketmine/scheduler/AsyncTask(75): xenialdan\MagicWE2\task\AsyncFillTask->onRun()
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #4 (): pocketmine\scheduler\AsyncTask->run()
2019-08-13 [19:10:22] [Server thread/CRITICAL]: Could not execute asynchronous task AsyncFillTask: Task crashed
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/CRITICAL]: ErrorException: "array_rand(): Array is empty" (EXCEPTION) in "plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask" at line 103
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #0 (): pocketmine\utils\Utils::errorExceptionHandler(integer 2, string[28] array_rand(): Array is empty, string[116] phar:///home/gsp_1485/g4.hmserv.eu-19140/plugins/MagicWE2_dev-167.phar/src/xenia, integer 103, array[10])
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #1 plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask(103): array_rand(array[0], integer 1)
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #2 plugins/MagicWE2_dev-167.phar/src/xenialdan/MagicWE2/task/AsyncFillTask(66): xenialdan\MagicWE2\task\AsyncFillTask->editBlocks(object xenialdan\MagicWE2\shape\Sphere, object xenialdan\MagicWE2\AsyncChunkManager, array[0])
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #3 src/pocketmine/scheduler/AsyncTask(75): xenialdan\MagicWE2\task\AsyncFillTask->onRun()
2019-08-13 [19:10:22] [Asynchronous Worker #0 thread/DEBUG]: #4 (): pocketmine\scheduler\AsyncTask->run()
2019-08-13 [19:10:22] [Server thread/CRITICAL]: Could not execute asynchronous task AsyncFillTask: Task crashed

https://jenkins.pmmp.io/job/PocketMine-MP/lastSuccessfulBuild/artifact/PocketMine-MP.phar https://poggit.pmmp.io/r/64022/MagicWE2_dev-167.phar https://poggit.pmmp.io/r/61892/DEVirion_dev-33.phar https://poggit.pmmp.io/ci/thebigsmileXD/customui/customui

inxomnyaa commented 5 years ago

Probably an empty string in the UI (blocks field) I will add a workaround for this, basically stopping the user from doing that, and handing that issue

inxomnyaa commented 5 years ago

Fixed in cleanup branch, it now throws an error/sends the user a message if the blocks are empty