menu
#3245494 RecursiveDirectoryIterator::__construct(/): failed to open dir: Permission denied

Submitted by PocketMine-MP 3.9.6

General information

Version: 3.9.6
Git commit: d1b70bd4
Plugin involvement: Direct
Report date: 2019-12-02 19:49:38 +0000 UTC

System Information

PHP version: 7.2.6
Operating system: android
System banner: Linux localhost 4.4.111-16290088 #1 SMP PREEMPT Tue Sep 17 16:12:10 KST 2019 aarch64

Error information

Warning: the DevTools plugin was directly involved in this crash. Please contact the plugin author.
Message: RecursiveDirectoryIterator::__construct(/): failed to open dir: Permission denied
File: plugins/DevTools_v1.13.4.phar/src/DevTools/ConsoleScript
Line: #107
Error level: UnexpectedValueException
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
		$excludedSubstrings[] = $basePattern . '.*' . $p;
}

$regex = sprintf('/^(?!.*(%s))^%s(%s).*/i',
implode('|', $excludedSubstrings), //String may not contain any of these substrings
preg_quote($basePath, '/'), //String must start with this path...
implode('|', preg_quote_array($includedPaths, '/')) //... and must be followed by one of these relative paths, if any were specified. If none, this will produce a null capturing group which will allow anything.
);

$directory = new \RecursiveDirectoryIterator($basePath, \FilesystemIterator::SKIP_DOTS | \FilesystemIterator::FOLLOW_SYMLINKS | \FilesystemIterator::CURRENT_AS_PATHNAME); //can't use fileinfo because of symlinks
$iterator = new \RecursiveIteratorIterator($directory);
$regexIterator = new \RegexIterator($iterator, $regex);

$count = count($phar->buildFromIterator($regexIterator, $basePath));
yield "Added $count files";

if($compression !== null){
yield "Checking for compressible files...";
foreach($phar as $file => $finfo){
/** @var \PharFileInfo $finfo */
#0 plugins/DevTools_v1.13.4.phar/src/DevTools/ConsoleScript(107): RecursiveDirectoryIterator->__construct(string[1] /, integer 4640)
#1 plugins/DevTools_v1.13.4.phar/src/DevTools/DevTools(275): buildPhar(string[75] /storage/emulated/0/PocketMine-MP/plugins/DevTools/PocketMine-MP_3.9.6.phar, string[1] /, array[2], array[6], string[90] <?php require("phar://" . __FILE__ . "/src/pocketmine/PocketMine.php"); __HALT_C, integer 2, integer 4096)
#2 plugins/DevTools_v1.13.4.phar/src/DevTools/DevTools(267): DevTools\DevTools->buildPhar(object pocketmine\command\ConsoleCommandSender, string[75] /storage/emulated/0/PocketMine-MP/plugins/DevTools/PocketMine-MP_3.9.6.phar, string[1] /, array[2], array[6], string[90] <?php require("phar://" . __FILE__ . "/src/pocketmine/PocketMine.php"); __HALT_C, integer 2)
#3 plugins/DevTools_v1.13.4.phar/src/DevTools/DevTools(111): DevTools\DevTools->makeServerCommand(object pocketmine\command\ConsoleCommandSender)
#4 src/pocketmine/command/PluginCommand(58): DevTools\DevTools->onCommand(object pocketmine\command\ConsoleCommandSender, object pocketmine\command\PluginCommand, string[10] makeserver, array[0])
#5 src/pocketmine/command/SimpleCommandMap(270): pocketmine\command\PluginCommand->execute(object pocketmine\command\ConsoleCommandSender, string[10] makeserver, array[0])
#6 src/pocketmine/Server(2035): pocketmine\command\SimpleCommandMap->dispatch(object pocketmine\command\ConsoleCommandSender, string[10] makeserver)
#7 src/pocketmine/Server(1622): pocketmine\Server->dispatchCommand(object pocketmine\command\ConsoleCommandSender, string[10] makeserver)
#8 vendor/pocketmine/snooze/src/SleeperHandler(123): pocketmine\Server->pocketmine\{closure}()
#9 vendor/pocketmine/snooze/src/SleeperHandler(85): pocketmine\snooze\SleeperHandler->processNotifications()
#10 src/pocketmine/Server(2355): pocketmine\snooze\SleeperHandler->sleepUntil(double 1575316178.4094)
#11 src/pocketmine/Server(2212): pocketmine\Server->tickProcessor()
#12 src/pocketmine/Server(1790): pocketmine\Server->start()
#13 src/pocketmine/PocketMine(275): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[34] /storage/emulated/0/PocketMine-MP/, string[42] /storage/emulated/0/PocketMine-MP/plugins/)
#14 src/pocketmine/PocketMine(299): pocketmine\server()
#15 (1): require(string[89] phar:///storage/emulated/0/PocketMine-MP/PocketMine-MP.phar/src/pocketmine/Pocke)

Loaded Plugins

  • Show

Server Settings

  • Show