From 3742b7392dd2e7607223148cee0f7475c4e2732d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Julius=20H=C3=A4rtl?= Date: Mon, 16 May 2022 08:28:16 +0200 Subject: [PATCH] Add explicit return if getSmallImagePreview fails MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- lib/private/Preview/Generator.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/private/Preview/Generator.php b/lib/private/Preview/Generator.php index e058a15bfa5..311b012d904 100644 --- a/lib/private/Preview/Generator.php +++ b/lib/private/Preview/Generator.php @@ -115,7 +115,7 @@ class Generator { * Generates previews of a file * * @param File $file - * @param array $specifications + * @param non-empty-array $specifications * @param string $mimeType * @return ISimpleFile the last preview that was generated * @throws NotFoundException @@ -213,6 +213,7 @@ class Generator { throw new NotFoundException('Cached preview size 0, invalid!'); } } + assert($preview !== null); // Free memory being used by the embedded image resource. Without this the image is kept in memory indefinitely. // Garbage Collection does NOT free this memory. We have to do it ourselves. @@ -226,8 +227,10 @@ class Generator { /** * Generate a small image straight away without generating a max preview first * Preview generated is 256x256 + * + * @throws NotFoundException */ - private function getSmallImagePreview(ISimpleFolder $previewFolder, File $file, string $mimeType, string $prefix, bool $crop) { + private function getSmallImagePreview(ISimpleFolder $previewFolder, File $file, string $mimeType, string $prefix, bool $crop): ISimpleFile { $nodes = $previewFolder->getDirectoryListing(); foreach ($nodes as $node) { @@ -284,6 +287,8 @@ class Generator { return $file; } } + + throw new NotFoundException('No provider successfully handled the preview generation'); } /** -- 2.39.5