Merkmal-Icon-Dateiendung: .ico statt .svg als Fallback-Default

Live gefunden direkt beim Nachprüfen des vorigen Fixes: "image/x-icon"
fehlt in Pythons mimetypes-Datenbank (guess_extension liefert None), der
Fallback-Default war fälschlich ".svg" statt ".ico" gesetzt (Kopierfehler
gegenüber _write_webapp_icon(), die genau dafür schon .ico als Default
nutzt). Ein Kolibri-Favicon (echtes ICO, von der neuen Magic-Bytes-
Erkennung korrekt als image/x-icon erkannt) landete dadurch weiterhin
mit .svg-Endung auf der Platte.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLk93dhDMrkPXefVdknMV9
This commit is contained in:
adminandClaude Sonnet 5 committed 2026-09-11 11:40:42 +02:00
1 parent a6fecdd818
commit 8140c8cf80
1 file changed
+7 -1
+7 -1
View File
@@ -3023,7 +3023,13 @@ def _write_webapp_icon(webapp_id, icon_bytes: bytes, content_type: str) -> str:
def _write_merkmal_icon(merkmal_id, icon_bytes: bytes, content_type: str) -> str:
extension = mimetypes.guess_extension(content_type) or ".svg"
# Live gefunden (11.09.2026): "image/x-icon" (klassisches favicon.ico,
# von _erkanntes_bildformat() erkannt) fehlt in Pythons mimetypes-
# Datenbank (guess_extension liefert None) - .ico ist bei irrigem/
# leerem Ergebnis der sinnvollste Default, gleiche Begruendung wie in
# _write_webapp_icon() (dort schon so geloest, hier zunaechst
# faelschlich .svg als Default gesetzt gewesen).
extension = mimetypes.guess_extension(content_type) or ".ico"
if extension == ".jpe":
extension = ".jpg"
filename = f"{merkmal_id}{extension}"