Fix #1165: Fixed broken mimetype detection during import

environments/review-docs-api-d-byp130/deployments/5273
Agate 2020-06-21 16:21:16 +02:00
rodzic 08e9469163
commit 989f66315b
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 6B501DFD73514E14
3 zmienionych plików z 14 dodań i 7 usunięć

Wyświetl plik

@ -874,7 +874,7 @@ class Upload(models.Model):
if self.audio_file:
self.mimetype = utils.guess_mimetype(self.audio_file)
elif self.source and self.source.startswith("file://"):
self.mimetype = mimetypes.guess_type(self.source)[0]
self.mimetype = utils.guess_mimetype_from_name(self.source)
if not self.size and self.audio_file:
self.size = self.audio_file.size
if not self.checksum:

Wyświetl plik

@ -18,12 +18,18 @@ def guess_mimetype(f):
b = min(1000000, f.size)
t = magic.from_buffer(f.read(b), mime=True)
if not t.startswith("audio/"):
# failure, we try guessing by extension
mt, _ = mimetypes.guess_type(f.name)
if mt:
t = mt
else:
t = EXTENSION_TO_MIMETYPE.get(f.name.split(".")[-1])
t = guess_mimetype_from_name(f.name)
return t
def guess_mimetype_from_name(name):
# failure, we try guessing by extension
mt, _ = mimetypes.guess_type(name)
if mt:
t = mt
else:
t = EXTENSION_TO_MIMETYPE.get(name.split(".")[-1])
return t

Wyświetl plik

@ -0,0 +1 @@
Fixed broken mimetype detection during import (#1165)