From 5dc8bd7dd534cd6463d38a5141e4c55033265d39 Mon Sep 17 00:00:00 2001 From: Claus-Justus Heine Date: Thu, 3 Feb 2022 08:56:24 +0100 Subject: [PATCH 1/2] Prevent the OpenDocument preview generator from trying to open empty files. Rationale: does not make sense, and triggers a deprecation error in \ZipArchive. Signed-off-by: Claus-Justus Heine --- lib/private/Preview/Bundled.php | 5 +++++ lib/private/Preview/OpenDocument.php | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/private/Preview/Bundled.php b/lib/private/Preview/Bundled.php index f3441b5211c66..75532fd417257 100644 --- a/lib/private/Preview/Bundled.php +++ b/lib/private/Preview/Bundled.php @@ -32,6 +32,11 @@ */ abstract class Bundled extends ProviderV2 { protected function extractThumbnail(File $file, $path): ?IImage { + + if ($file->getSize() == 0) { + return null; + } + $sourceTmp = \OC::$server->getTempManager()->getTemporaryFile(); $targetTmp = \OC::$server->getTempManager()->getTemporaryFile(); diff --git a/lib/private/Preview/OpenDocument.php b/lib/private/Preview/OpenDocument.php index 01e191c278958..eeb0622be607b 100644 --- a/lib/private/Preview/OpenDocument.php +++ b/lib/private/Preview/OpenDocument.php @@ -43,7 +43,7 @@ public function getMimeType(): string { */ public function getThumbnail(File $file, int $maxX, int $maxY): ?IImage { $image = $this->extractThumbnail($file, 'Thumbnails/thumbnail.png'); - if ($image->valid()) { + if (!empty($image) && $image->valid()) { return $image; } return null; From 6ea0b8942274138bc76ab808a99466a51913c8d1 Mon Sep 17 00:00:00 2001 From: Claus-Justus Heine Date: Mon, 14 Feb 2022 23:48:14 +0100 Subject: [PATCH 2/2] Update lib/private/Preview/Bundled.php Co-authored-by: Carl Schwan --- lib/private/Preview/Bundled.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/private/Preview/Bundled.php b/lib/private/Preview/Bundled.php index 75532fd417257..1e44106e4b2af 100644 --- a/lib/private/Preview/Bundled.php +++ b/lib/private/Preview/Bundled.php @@ -33,7 +33,7 @@ abstract class Bundled extends ProviderV2 { protected function extractThumbnail(File $file, $path): ?IImage { - if ($file->getSize() == 0) { + if ($file->getSize() === 0) { return null; }