Fix #1165: Fixed broken mimetype detection during import
This commit is contained in:
parent
08e9469163
commit
989f66315b
|
@ -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:
|
||||
|
|
|
@ -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
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Fixed broken mimetype detection during import (#1165)
|
Loading…
Reference in New Issue