From c465835e856601ccbe2643f690b0bc38ca5c3aa8 Mon Sep 17 00:00:00 2001 From: Vincent Petry Date: Mon, 24 Feb 2014 12:20:11 +0100 Subject: Replace deleteAll call with unlink call The method deleteAll() doesn't officially exist on the Storage class as it's not defined on the interface, which means it fails on the Quota storage wrapper and might fail on some external storage classes. Also, this here is the only use case for that one method. --- lib/private/files/view.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/private/files/view.php b/lib/private/files/view.php index 530aa8f7514..5206e4f01b7 100644 --- a/lib/private/files/view.php +++ b/lib/private/files/view.php @@ -413,7 +413,7 @@ class View { $result = $this->copy($path1, $path2); if ($result === true) { list($storage1, $internalPath1) = Filesystem::resolvePath($absolutePath1 . $postFix1); - $result = $storage1->deleteAll($internalPath1); + $result = $storage1->unlink($internalPath1); } } else { $source = $this->fopen($path1 . $postFix1, 'r'); -- cgit v1.2.3 From a23ef25010f8232c36337bb6b48c9a0bd7a59b40 Mon Sep 17 00:00:00 2001 From: Vincent Petry Date: Mon, 24 Feb 2014 12:21:48 +0100 Subject: Removed unused deleteAll method on Common storage class The "deleteAll" method on the Common storage class isn't used anywhere. Also, it isn't defined on the Storage interface so this fix removes it completely. --- lib/private/files/storage/common.php | 37 ------------------------------------ 1 file changed, 37 deletions(-) diff --git a/lib/private/files/storage/common.php b/lib/private/files/storage/common.php index d4dca780ff3..9e826dd6192 100644 --- a/lib/private/files/storage/common.php +++ b/lib/private/files/storage/common.php @@ -140,43 +140,6 @@ abstract class Common implements \OC\Files\Storage\Storage { return $result; } - /** - * @brief Deletes all files and folders recursively within a directory - * @param string $directory The directory whose contents will be deleted - * @param bool $empty Flag indicating whether directory will be emptied - * @returns bool - * - * @note By default the directory specified by $directory will be - * deleted together with its contents. To avoid this set $empty to true - */ - public function deleteAll($directory, $empty = false) { - $directory = trim($directory, '/'); - if (!$this->is_dir($directory) || !$this->isReadable($directory)) { - return false; - } else { - $directoryHandle = $this->opendir($directory); - if (is_resource($directoryHandle)) { - while (($contents = readdir($directoryHandle)) !== false) { - if (!\OC\Files\Filesystem::isIgnoredDir($contents)) { - $path = $directory . '/' . $contents; - if ($this->is_dir($path)) { - $this->deleteAll($path); - } else { - $this->unlink($path); - } - } - } - } - if ($empty === false) { - if (!$this->rmdir($directory)) { - return false; - } - } - return true; - } - - } - public function getMimeType($path) { if ($this->is_dir($path)) { return 'httpd/unix-directory'; -- cgit v1.2.3