1
0
mirror of synced 2024-11-25 18:54:22 +01:00

libmat2: audio: not all id3 types have a text attribute

Not all id3 types have a text attribute (such as mutagen.id3.APIC or
mutagen.id3.UFID). This leads to the get_meta helper to crash when
trying to access the text attribute of an object which does not have it.
Fixes it by checking the text attribute is available before accessing
it.

Signed-off-by: Antoine Tenart <antoine.tenart@ack.tf>
This commit is contained in:
Antoine Tenart 2019-03-22 16:33:59 +01:00 committed by jvoisin
parent 2dc097baf3
commit 0e3c2c9b1b

View File

@ -38,6 +38,8 @@ class MP3Parser(MutagenParser):
metadata = {} # type: Dict[str, Union[str, dict]] metadata = {} # type: Dict[str, Union[str, dict]]
meta = mutagen.File(self.filename).tags meta = mutagen.File(self.filename).tags
for key in meta: for key in meta:
if not hasattr(meta[key], 'text'):
continue
metadata[key.rstrip(' \t\r\n\0')] = ', '.join(map(str, meta[key].text)) metadata[key.rstrip(' \t\r\n\0')] = ', '.join(map(str, meta[key].text))
return metadata return metadata