From e60888d98892be22477ea6ace68255d7202dbec8 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Mon, 13 Feb 2023 16:47:26 +0100 Subject: fix(preview-generator): Throw exception before dividing by zero when generating previews If the maximum preview generated gives some kind of invalid IImage, it's dimentions and filename can be set to zero. And then later we do a division by zero to keep the aspect ratio of the previews. Signed-off-by: Thomas Citharel --- lib/private/Preview/Generator.php | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'lib/private/Preview') diff --git a/lib/private/Preview/Generator.php b/lib/private/Preview/Generator.php index 47f2952c6e6..fd0a1009663 100644 --- a/lib/private/Preview/Generator.php +++ b/lib/private/Preview/Generator.php @@ -170,6 +170,10 @@ class Generator { [$maxWidth, $maxHeight] = $this->getPreviewSize($maxPreview, $previewVersion); + if ($maxWidth <= 0 || $maxHeight <= 0) { + throw new NotFoundException('The maximum preview sizes are zero or less pixels'); + } + $preview = null; foreach ($specifications as $specification) { -- cgit v1.2.3