From a1706e597937b9543e942017fa52ca0b52426690 Mon Sep 17 00:00:00 2001
From: AlexandreJunod <alexandre.junod@hotmail.com>
Date: Mon, 3 Jun 2024 10:33:15 +0200
Subject: [PATCH] prevent mime type to crash

---
 geocity/apps/api/services.py | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/geocity/apps/api/services.py b/geocity/apps/api/services.py
index a5e0d6451..75de5266b 100644
--- a/geocity/apps/api/services.py
+++ b/geocity/apps/api/services.py
@@ -3,6 +3,7 @@
 from io import BytesIO
 
 from django.conf import settings
+from django.core.exceptions import SuspiciousOperation
 from django.db.models import Q
 from django.utils.text import get_valid_filename
 from PIL import Image
@@ -22,7 +23,11 @@ def get_mime_type(content):
     """
     Used to retrieve mime type in response.content of request
     """
-    image = Image.open(BytesIO(content))
+    try:
+        image = Image.open(BytesIO(content))
+    except:
+        raise SuspiciousOperation
+
     image_format = image.format
     mime_type = "image/" + image_format.lower()
     return mime_type