diff options
author | Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com> | 2024-03-14 16:26:52 +0100 |
---|---|---|
committer | backportbot[bot] <backportbot[bot]@users.noreply.github.com> | 2024-03-14 18:45:53 +0000 |
commit | 63e5b6fb95488aa282fa2d7a430ad60154dbb858 (patch) | |
tree | a07de58ed1f55fa93c074c0d8e3733a9ff2a2e82 | |
parent | a2b924edc686856614678aa9e4af90cd0f7fb6f9 (diff) | |
download | nextcloud-server-63e5b6fb95488aa282fa2d7a430ad60154dbb858.tar.gz nextcloud-server-63e5b6fb95488aa282fa2d7a430ad60154dbb858.zip |
fix: avoid scanning a non existing directory
Signed-off-by: Benjamin Gaussorgues <benjamin.gaussorgues@nextcloud.com>
-rw-r--r-- | lib/private/Files/Storage/Local.php | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/private/Files/Storage/Local.php b/lib/private/Files/Storage/Local.php index 813e5aa09d7..661ae68d44e 100644 --- a/lib/private/Files/Storage/Local.php +++ b/lib/private/Files/Storage/Local.php @@ -275,7 +275,11 @@ class Local extends \OC\Files\Storage\Common { public function file_exists($path) { if ($this->caseInsensitive) { $fullPath = $this->getSourcePath($path); - $content = scandir(dirname($fullPath), SCANDIR_SORT_NONE); + $parentPath = dirname($fullPath); + if (!is_dir($parentPath)) { + return false; + } + $content = scandir($parentPath, SCANDIR_SORT_NONE); return is_array($content) && array_search(basename($fullPath), $content) !== false; } else { return file_exists($this->getSourcePath($path)); |