CC-5862: Invalid UTF-8 chars cause DB error

* Strip and validate UTF-8 strings in the Media API
* Also properly parse track numbers containing "-"
This commit is contained in:
Albert Santoni 2014-05-30 13:02:19 -04:00
parent 7caa42cf69
commit 1373d4984f
2 changed files with 30 additions and 1 deletions

View file

@ -83,7 +83,11 @@ class MetadataAnalyzer(Analyzer):
track_number = audio_file["tracknumber"]
if isinstance(track_number, list): # Sometimes tracknumber is a list, ugh
track_number = track_number[0]
track_number_tokens = track_number.split(u'/')
track_number_tokens = track_number
if u'/' in track_number:
track_number_tokens = track_number.split(u'/')
elif u'-' in track_number:
track_number_tokens = track_number.split(u'-')
track_number = track_number_tokens[0]
metadata["track_number"] = track_number
track_total = track_number_tokens[1]