diff --git a/application/admin/controller/Addon.php b/application/admin/controller/Addon.php index 560f51381dc1d6a0e8dbf58ab0b27170b8f5ad1a..eb92c0affe7ddc265b9680cb629550e4981c57d7 100644 --- a/application/admin/controller/Addon.php +++ b/application/admin/controller/Addon.php @@ -184,6 +184,12 @@ class Addon extends Backend try { Service::unzip($tmpName); @unlink($tmpFile); + // 兼容Mac本地打包的插件 + $macOsxDir = $tmpAddonDir . '__MACOSX'; + if (is_dir($macOsxDir)) { + @rmdirs($macOsxDir); + } + $infoFile = $tmpAddonDir . 'info.ini'; if (!is_file($infoFile)) { throw new Exception(__('Addon info file was not found')); @@ -202,6 +208,7 @@ class Addon extends Backend //重命名插件文件夹 rename($tmpAddonDir, $newAddonDir); + try { //默认禁用该插件 $info = get_addon_info($name);