Skip to content

Commit a842960

Browse files
authored
Merge pull request #290 from docat-org/bugfix/289-Icon-Upload-Mime-Type-Check
Fix(docat): Icon-Upload Mime Type Check
2 parents a88baa8 + f8918fc commit a842960

File tree

4 files changed

+100
-78
lines changed

4 files changed

+100
-78
lines changed

docat/docat/app.py

+5-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from pathlib import Path
1515
from typing import Optional
1616

17+
import magic
1718
from fastapi import Depends, FastAPI, File, Header, Response, UploadFile, status
1819
from fastapi.staticfiles import StaticFiles
1920
from pydantic import BaseModel
@@ -129,7 +130,10 @@ def upload_icon(
129130
response.status_code = status.HTTP_404_NOT_FOUND
130131
return ApiResponse(message=f"Project {project} not found")
131132

132-
if not file.content_type.startswith("image/"):
133+
mime_type_checker = magic.Magic(mime=True)
134+
mime_type = mime_type_checker.from_buffer(file.file.read())
135+
136+
if not mime_type.startswith("image/"):
133137
response.status_code = status.HTTP_400_BAD_REQUEST
134138
return ApiResponse(message="Icon must be an image")
135139

0 commit comments

Comments
 (0)