Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRoeland Jago Douma <roeland@famdouma.nl>2018-11-05 18:27:43 +0300
committerRoeland Jago Douma <roeland@famdouma.nl>2018-11-09 15:23:52 +0300
commit8b03bf7d5abfbafd63c77224f9aa9fe21d705e70 (patch)
treed4df8aadf189391bfe90241014780769aeebdcd6 /lib
parent9c7f09d2accd9c2eaaef9ed60781944d0cf7c453 (diff)
Properly search the root of a shared external storage
Fixes #1020 When an external storage is shared with you in full the root is '' (empty). This adds an extra check for an empty jail basically. Because if the jail is on the empty string. It matches all paths. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Diffstat (limited to 'lib')
-rw-r--r--lib/private/Files/Cache/Wrapper/CacheJail.php2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/private/Files/Cache/Wrapper/CacheJail.php b/lib/private/Files/Cache/Wrapper/CacheJail.php
index 1ad00ba44c5..2e9c60bee4b 100644
--- a/lib/private/Files/Cache/Wrapper/CacheJail.php
+++ b/lib/private/Files/Cache/Wrapper/CacheJail.php
@@ -93,7 +93,7 @@ class CacheJail extends CacheWrapper {
protected function filterCacheEntry($entry) {
$rootLength = strlen($this->getRoot()) + 1;
- return ($entry['path'] === $this->getRoot()) or (substr($entry['path'], 0, $rootLength) === $this->getRoot() . '/');
+ return $rootLength === 1 || ($entry['path'] === $this->getRoot()) || (substr($entry['path'], 0, $rootLength) === $this->getRoot() . '/');
}
/**