fix(theming): Make getImage() call save against missing non-SVG version

Signed-off-by: Joas Schilling <coding@schilljs.com>
pull/47380/head
Joas Schilling 2024-08-21 10:30:25 +07:00
parent cf56874cb1
commit dbbe2bbcb7
No known key found for this signature in database
GPG Key ID: 74434EFE0D2E2205
1 changed files with 14 additions and 3 deletions

@ -9,6 +9,8 @@ declare(strict_types=1);
namespace OC\Repair;
use OCA\Theming\ImageManager;
use OCP\Files\NotFoundException;
use OCP\Files\NotPermittedException;
use OCP\IConfig;
use OCP\Migration\IOutput;
use OCP\Migration\IRepairStep;
@ -44,9 +46,18 @@ class RepairLogoDimension implements IRepairStep {
return;
}
$simpleFile = $imageManager->getImage('logo', false);
$image = @imagecreatefromstring($simpleFile->getContent());
try {
try {
$simpleFile = $imageManager->getImage('logo', false);
$image = @imagecreatefromstring($simpleFile->getContent());
} catch (NotFoundException|NotPermittedException) {
$simpleFile = $imageManager->getImage('logo');
$image = false;
}
} catch (NotFoundException|NotPermittedException) {
$output->info('Theming is not used to provide a logo');
return;
}
$dimensions = '';
if ($image !== false) {