diff --git a/core/src/plugins/action.powerfs/class.PowerFSController.php b/core/src/plugins/action.powerfs/class.PowerFSController.php index f65b2cf9c9..01af818e22 100644 --- a/core/src/plugins/action.powerfs/class.PowerFSController.php +++ b/core/src/plugins/action.powerfs/class.PowerFSController.php @@ -46,6 +46,7 @@ public function switchAction($action, $httpVars, $fileVars) } $urlBase = "pydio://". ConfService::getRepository()->getId(); $mess = ConfService::getMessages(); + switch ($action) { case "monitor_compression" : @@ -86,9 +87,14 @@ public function switchAction($action, $httpVars, $fileVars) case "postcompress_download": $archive = AJXP_Utils::getAjxpTmpDir().DIRECTORY_SEPARATOR.$httpVars["ope_id"]."_".AJXP_Utils::sanitize(AJXP_Utils::decodeSecureMagic($httpVars["archive_name"]), AJXP_SANITIZE_FILENAME); + $fsDriver = AJXP_PluginsService::getInstance()->getUniqueActivePluginForType("access"); if (is_file($archive)) { - register_shutdown_function("unlink", $archive); + if(!$fsDriver->getFilteredOption("USE_XSENDFILE", ConfService::getRepository()) + && !$fsDriver->getFilteredOption("USE_XACCELREDIRECT", ConfService::getRepository())) { + register_shutdown_function("unlink", $archive); + } + $fsDriver->readFile($archive, "force-download", $httpVars["archive_name"], false, null, true); } else { echo("");