diff --git a/vendor/autoload.php b/vendor/autoload.php index bebe77724..7fec3f8a1 100644 --- a/vendor/autoload.php +++ b/vendor/autoload.php @@ -4,4 +4,4 @@ require_once __DIR__ . '/composer/autoload_real.php'; -return ComposerAutoloaderInitd21bcdb0e9e0fd6013ffb7c64c8a9d94::getLoader(); +return ComposerAutoloaderInit7ad2dfd941224dedfd9e69a3187017d8::getLoader(); diff --git a/vendor/composer/autoload_real.php b/vendor/composer/autoload_real.php index c89c4fdf2..5f5859490 100644 --- a/vendor/composer/autoload_real.php +++ b/vendor/composer/autoload_real.php @@ -2,7 +2,7 @@ // autoload_real.php @generated by Composer -class ComposerAutoloaderInitd21bcdb0e9e0fd6013ffb7c64c8a9d94 +class ComposerAutoloaderInit7ad2dfd941224dedfd9e69a3187017d8 { private static $loader; @@ -22,15 +22,15 @@ class ComposerAutoloaderInitd21bcdb0e9e0fd6013ffb7c64c8a9d94 return self::$loader; } - spl_autoload_register(array('ComposerAutoloaderInitd21bcdb0e9e0fd6013ffb7c64c8a9d94', 'loadClassLoader'), true, true); + spl_autoload_register(array('ComposerAutoloaderInit7ad2dfd941224dedfd9e69a3187017d8', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(); - spl_autoload_unregister(array('ComposerAutoloaderInitd21bcdb0e9e0fd6013ffb7c64c8a9d94', 'loadClassLoader')); + spl_autoload_unregister(array('ComposerAutoloaderInit7ad2dfd941224dedfd9e69a3187017d8', 'loadClassLoader')); $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); if ($useStaticLoader) { require_once __DIR__ . '/autoload_static.php'; - call_user_func(\Composer\Autoload\ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94::getInitializer($loader)); + call_user_func(\Composer\Autoload\ComposerStaticInit7ad2dfd941224dedfd9e69a3187017d8::getInitializer($loader)); } else { $map = require __DIR__ . '/autoload_namespaces.php'; foreach ($map as $namespace => $path) { @@ -51,19 +51,19 @@ class ComposerAutoloaderInitd21bcdb0e9e0fd6013ffb7c64c8a9d94 $loader->register(true); if ($useStaticLoader) { - $includeFiles = Composer\Autoload\ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94::$files; + $includeFiles = Composer\Autoload\ComposerStaticInit7ad2dfd941224dedfd9e69a3187017d8::$files; } else { $includeFiles = require __DIR__ . '/autoload_files.php'; } foreach ($includeFiles as $fileIdentifier => $file) { - composerRequired21bcdb0e9e0fd6013ffb7c64c8a9d94($fileIdentifier, $file); + composerRequire7ad2dfd941224dedfd9e69a3187017d8($fileIdentifier, $file); } return $loader; } } -function composerRequired21bcdb0e9e0fd6013ffb7c64c8a9d94($fileIdentifier, $file) +function composerRequire7ad2dfd941224dedfd9e69a3187017d8($fileIdentifier, $file) { if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { require $file; diff --git a/vendor/composer/autoload_static.php b/vendor/composer/autoload_static.php index e31c49314..13957fe5e 100644 --- a/vendor/composer/autoload_static.php +++ b/vendor/composer/autoload_static.php @@ -4,7 +4,7 @@ namespace Composer\Autoload; -class ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94 +class ComposerStaticInit7ad2dfd941224dedfd9e69a3187017d8 { public static $files = array ( '9b552a3cc426e3287cc811caefa3cf53' => __DIR__ . '/..' . '/topthink/think-helper/src/helper.php', @@ -651,10 +651,10 @@ class ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94 public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { - $loader->prefixLengthsPsr4 = ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94::$prefixLengthsPsr4; - $loader->prefixDirsPsr4 = ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94::$prefixDirsPsr4; - $loader->fallbackDirsPsr0 = ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94::$fallbackDirsPsr0; - $loader->classMap = ComposerStaticInitd21bcdb0e9e0fd6013ffb7c64c8a9d94::$classMap; + $loader->prefixLengthsPsr4 = ComposerStaticInit7ad2dfd941224dedfd9e69a3187017d8::$prefixLengthsPsr4; + $loader->prefixDirsPsr4 = ComposerStaticInit7ad2dfd941224dedfd9e69a3187017d8::$prefixDirsPsr4; + $loader->fallbackDirsPsr0 = ComposerStaticInit7ad2dfd941224dedfd9e69a3187017d8::$fallbackDirsPsr0; + $loader->classMap = ComposerStaticInit7ad2dfd941224dedfd9e69a3187017d8::$classMap; }, null, ClassLoader::class); } diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json index c3c10cf7f..3f8b956ad 100644 --- a/vendor/composer/installed.json +++ b/vendor/composer/installed.json @@ -963,12 +963,12 @@ "source": { "type": "git", "url": "https://github.com/zoujingli/ThinkLibrary.git", - "reference": "90513f6dd77469528657c1a14c0d69e2eaea80a1" + "reference": "3167e4678d32158127cde5f8d0d34848e42874c1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zoujingli/ThinkLibrary/zipball/90513f6dd77469528657c1a14c0d69e2eaea80a1", - "reference": "90513f6dd77469528657c1a14c0d69e2eaea80a1", + "url": "https://api.github.com/repos/zoujingli/ThinkLibrary/zipball/3167e4678d32158127cde5f8d0d34848e42874c1", + "reference": "3167e4678d32158127cde5f8d0d34848e42874c1", "shasum": "", "mirrors": [ { @@ -985,7 +985,7 @@ "ext-mbstring": "*", "topthink/framework": "^6.0" }, - "time": "2020-09-04T04:22:19+00:00", + "time": "2020-09-04T06:32:24+00:00", "type": "library", "extra": { "think": { diff --git a/vendor/services.php b/vendor/services.php index 53c3d0d13..55cb702d3 100644 --- a/vendor/services.php +++ b/vendor/services.php @@ -1,5 +1,5 @@ 'think\\admin\\Library', diff --git a/vendor/zoujingli/think-library/src/service/ModuleService.php b/vendor/zoujingli/think-library/src/service/ModuleService.php index bc2739797..5892088a3 100644 --- a/vendor/zoujingli/think-library/src/service/ModuleService.php +++ b/vendor/zoujingli/think-library/src/service/ModuleService.php @@ -195,7 +195,7 @@ class ModuleService extends Service return false; } // 禁止下载数据库配置文件 - if (stripos($name, 'database.php') !== false) { + if (stripos(strtr($name, '\\', '/'), 'config/database') !== false) { return false; } // 禁止非官方演示项目下载 @@ -204,7 +204,7 @@ class ModuleService extends Service } // 检查允许下载的文件规则 foreach ($this->_getAllowDownloadRule() as $rule) { - if (stripos($name, $rule) !== false) return true; + if (stripos($name, $rule) === 0) return true; } // 不在允许下载的文件规则 return false; @@ -263,11 +263,11 @@ class ModuleService extends Service */ private function _getAllowDownloadRule(): array { - $data = $this->app->cache->get('moduleAllowRule', []); + $data = $this->app->cache->get('moduleAllowDownloadRule', []); if (is_array($data) && count($data) > 0) return $data; $data = ['think', 'config', 'public/static', 'public/router.php', 'public/index.php']; foreach (array_keys($this->getModules()) as $name) $data[] = 'app/' . $name; - $this->app->cache->set('moduleAllowRule', $data, 30); + $this->app->cache->set('moduleAllowDownloadRule', $data, 30); return $data; } diff --git a/vendor/zoujingli/think-library/src/service/NodeService.php b/vendor/zoujingli/think-library/src/service/NodeService.php index ceb3f5f8c..ccd6c8206 100644 --- a/vendor/zoujingli/think-library/src/service/NodeService.php +++ b/vendor/zoujingli/think-library/src/service/NodeService.php @@ -143,13 +143,18 @@ class NodeService extends Service */ public function scanDirectory($path, $data = [], $ext = 'php') { - if (file_exists($path)) if (is_file($path)) $data[] = $path; - elseif (is_dir($path)) foreach (scandir($path) as $item) if ($item[0] !== '.') { - $realpath = rtrim($path, '\\/') . DIRECTORY_SEPARATOR . $item; - if (is_readable($realpath)) if (is_dir($realpath)) { - $data = $this->scanDirectory($realpath, $data, $ext); - } elseif (is_file($realpath) && (is_null($ext) || pathinfo($realpath, 4) === $ext)) { - $data[] = strtr($realpath, '\\', '/'); + if (file_exists($path)) { + if (is_file($path)) { + $data[] = strtr($path, '\\', '/'); + } elseif (is_dir($path)) { + foreach (scandir($path) as $item) if ($item[0] !== '.') { + $real = rtrim($path, '\\/') . DIRECTORY_SEPARATOR . $item; + if (is_readable($real)) if (is_dir($real)) { + $data = $this->scanDirectory($real, $data, $ext); + } elseif (is_file($real) && (is_null($ext) || pathinfo($real, 4) === $ext)) { + $data[] = strtr($real, '\\', '/'); + } + } } } return $data;