From f21ca57603cfa503699b7e09a155e18d876d65fe Mon Sep 17 00:00:00 2001
From: Yassine Doghri <yassine@doghri.fr>
Date: Sat, 29 Jan 2022 15:21:46 +0000
Subject: [PATCH] fix(housekeeping): set default sizes value + ignore illegal
 IFD size error to proceed with script

---
 app/Entities/Media/Image.php                     | 3 ++-
 modules/Admin/Controllers/SettingsController.php | 3 +++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/app/Entities/Media/Image.php b/app/Entities/Media/Image.php
index 68b2d47909..4c51498bb0 100644
--- a/app/Entities/Media/Image.php
+++ b/app/Entities/Media/Image.php
@@ -48,7 +48,8 @@ class Image extends BaseMedia
     {
         parent::setFile($file);
 
-        if ($this->file_mimetype === 'image/jpeg' && $metadata = exif_read_data(
+        // @phpstan-ignore-next-line
+        if ($this->file_mimetype === 'image/jpeg' && $metadata = @exif_read_data(
             media_path($this->file_path),
             null,
             true
diff --git a/modules/Admin/Controllers/SettingsController.php b/modules/Admin/Controllers/SettingsController.php
index 7054b0e0d1..1f1355f026 100644
--- a/modules/Admin/Controllers/SettingsController.php
+++ b/modules/Admin/Controllers/SettingsController.php
@@ -217,7 +217,10 @@ class SettingsController extends BaseController
                 } elseif (str_starts_with($image->file_path, 'persons')) {
                     $image->sizes = config('Images')
                         ->personAvatarSizes;
+                } else {
+                    $image->sizes = [];
                 }
+
                 $image->setFile(new File(media_path($image->file_path)));
 
                 (new MediaModel('image'))->updateMedia($image);
-- 
GitLab