fix s3 doesDirectoryExist check for empty directories
if a directory is empty, only the 'marker' object `/` exists. since not all s3 implementations return just the prefix when listing objects by prefix, when listing objects by the folder prefix, nothing will be returned if the directory is empty. by not including the trailing slash in the prefix, the folder marked will always be returned if it exists Signed-off-by: Robin Appelman <robin@icewind.nl>
This commit is contained in:
parent
c8381c5d17
commit
30ea77c673
|
@ -160,7 +160,7 @@ class AmazonS3 extends \OC\Files\Storage\Common {
|
||||||
try {
|
try {
|
||||||
$result = $this->getConnection()->listObjects([
|
$result = $this->getConnection()->listObjects([
|
||||||
'Bucket' => $this->bucket,
|
'Bucket' => $this->bucket,
|
||||||
'Prefix' => rtrim($path, '/') . '/',
|
'Prefix' => rtrim($path, '/'),
|
||||||
'MaxKeys' => 1,
|
'MaxKeys' => 1,
|
||||||
]);
|
]);
|
||||||
$this->directoryCache[$path] = $result['Contents'] || $result['CommonPrefixes'];
|
$this->directoryCache[$path] = $result['Contents'] || $result['CommonPrefixes'];
|
||||||
|
|
Loading…
Reference in New Issue