Merge pull request #22776 from nextcloud/backport/22747/stable19
[stable19] fix s3 doesDirectoryExist check for empty directories
This commit is contained in:
commit
b9ef2a543f
|
@ -160,10 +160,11 @@ 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,
|
||||||
|
'Delimiter' => '/',
|
||||||
]);
|
]);
|
||||||
$this->directoryCache[$path] = $result['Contents'] || $result['CommonPrefixes'];
|
$this->directoryCache[$path] = ($result['Contents'][0]['Key'] === rtrim($path, '/') . '/') || $result['CommonPrefixes'];
|
||||||
} catch (S3Exception $e) {
|
} catch (S3Exception $e) {
|
||||||
if ($e->getStatusCode() === 403) {
|
if ($e->getStatusCode() === 403) {
|
||||||
$this->directoryCache[$path] = false;
|
$this->directoryCache[$path] = false;
|
||||||
|
|
Loading…
Reference in New Issue