Check if array elements exist before using them
It seems that in some recent upgrade here. Not always the entries we expect are returned. So we should first check if they exist. As to not spam the log. Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
parent
9976e47035
commit
b7be09ab2c
|
@ -165,7 +165,13 @@ class AmazonS3 extends \OC\Files\Storage\Common {
|
|||
'MaxKeys' => 1,
|
||||
'Delimiter' => '/',
|
||||
]);
|
||||
$this->directoryCache[$path] = ($result['Contents'][0]['Key'] === rtrim($path, '/') . '/') || $result['CommonPrefixes'];
|
||||
|
||||
if ((isset($result['Contents'][0]['Key']) && $result['Contents'][0]['Key'] === rtrim($path, '/') . '/')
|
||||
|| isset($result['CommonPrefixes'])) {
|
||||
$this->directoryCache[$path] = true;
|
||||
} else {
|
||||
$this->directoryCache[$path] = false;
|
||||
}
|
||||
} catch (S3Exception $e) {
|
||||
if ($e->getStatusCode() === 403) {
|
||||
$this->directoryCache[$path] = false;
|
||||
|
|
Loading…
Reference in New Issue