diff --git a/classes/UpgradeTools/FilesystemAdapter.php b/classes/UpgradeTools/FilesystemAdapter.php index b5cd11f24..6b4659ffc 100644 --- a/classes/UpgradeTools/FilesystemAdapter.php +++ b/classes/UpgradeTools/FilesystemAdapter.php @@ -234,19 +234,26 @@ public function isReleaseValid(string $path): bool return true; } - public function clearDirectory(string $folderToClear): bool + public function clearDirectory(string $folderToClear, bool $deleteFolder = false): bool { + $hasDeletedItems = false; + if ($this->filesystem->exists($folderToClear)) { foreach (scandir($folderToClear) as $item) { if ($item !== '.' && $item !== '..' && $item !== 'index.php') { $path = $folderToClear . DIRECTORY_SEPARATOR . $item; $this->filesystem->remove($path); - return true; + $hasDeletedItems = true; } } + + if ($deleteFolder) { + $this->filesystem->remove($folderToClear); + $hasDeletedItems = true; + } } - return false; + return $hasDeletedItems; } }