aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_external
diff options
context:
space:
mode:
authorDaniel Kesselberg <mail@danielkesselberg.de>2019-02-14 18:06:09 +0100
committerBackportbot <backportbot-noreply@rullzer.com>2019-09-26 09:41:45 +0000
commitbb16bd8e73015252393cf01208d15faab73131e4 (patch)
treed52b461748dd152c3a07b8628b2f807ae373e6b6 /apps/files_external
parent812402f3ac4747a855a50d9ee2f9e1e9d4199597 (diff)
downloadnextcloud-server-bb16bd8e73015252393cf01208d15faab73131e4.tar.gz
nextcloud-server-bb16bd8e73015252393cf01208d15faab73131e4.zip
Don't strip path from directory prefix
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Diffstat (limited to 'apps/files_external')
-rw-r--r--apps/files_external/lib/Lib/Storage/AmazonS3.php7
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/files_external/lib/Lib/Storage/AmazonS3.php b/apps/files_external/lib/Lib/Storage/AmazonS3.php
index 019bfa17b3c..befa6567100 100644
--- a/apps/files_external/lib/Lib/Storage/AmazonS3.php
+++ b/apps/files_external/lib/Lib/Storage/AmazonS3.php
@@ -335,7 +335,7 @@ class AmazonS3 extends \OC\Files\Storage\Common {
if (is_array($result['CommonPrefixes'])) {
foreach ($result['CommonPrefixes'] as $prefix) {
$files[] = substr(trim($prefix['Prefix'], '/'), strlen($path));
- $this->directoryCache[substr(trim($prefix['Prefix'], '/'), strlen($path))] = true;
+ $this->directoryCache[trim($prefix['Prefix'], '/')] = true;
}
}
if (is_array($result['Contents'])) {
@@ -433,6 +433,11 @@ class AmazonS3 extends \OC\Files\Storage\Common {
public function is_dir($path) {
$path = $this->normalizePath($path);
+
+ if (isset($this->filesCache[$path])) {
+ return false;
+ }
+
try {
return $this->isRoot($path) || $this->doesDirectoryExist($path);
} catch (S3Exception $e) {