diff --git a/apps/files_external/lib/Lib/Storage/AmazonS3.php b/apps/files_external/lib/Lib/Storage/AmazonS3.php index fdcbf33627e17..7b45aac1831b0 100644 --- a/apps/files_external/lib/Lib/Storage/AmazonS3.php +++ b/apps/files_external/lib/Lib/Storage/AmazonS3.php @@ -294,11 +294,18 @@ private function batchDelete(?string $path = null): bool { public function opendir(string $path) { try { - $content = iterator_to_array($this->getDirectoryContent($path)); - return IteratorDirectory::wrap(array_map(function (array $item) { - return $item['name']; - }, $content)); + $names = []; + foreach ($this->getDirectoryContent($path) as $item) { + if (isset($item['name'])) { + $names[] = $item['name']; + } + } + return IteratorDirectory::wrap($names); } catch (S3Exception $e) { + $this->logger->error($e->getMessage(), [ + 'app' => 'files_external', + 'exception' => $e, + ]); return false; } }