diff --git a/addon.xml b/addon.xml index 02179a3b92e75b0ea9f2b4fb615833afb92cd509..17e7f1e0eeee9f82990364fd8b4fa64787019f10 100644 --- a/addon.xml +++ b/addon.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <addon id="script.spotify.screensaver" name="Spotify Screensaver" - version="0.0.15" + version="0.0.16" provider-name="Benoît Harrault"> <requires> <import addon="xbmc.python" version="2.25.0"/> diff --git a/gui.py b/gui.py index e16452524c532e7c3046560b35cdd3346e3934de..23ba4065f4cbe7315435fb13381d8d3b5d37a2d9 100644 --- a/gui.py +++ b/gui.py @@ -172,6 +172,9 @@ class GUI(xbmcgui.WindowXMLDialog): self.PanelItems = self.getControl(101) self.PanelItems.reset() + def _fix_encoding(self, string): + return string.encode('utf-8') + def _get_track_data(self, track_id, try_count=1): self.log('track_id: [' + str(track_id) + ']') self.log('(try: ' + str(try_count) + ')') @@ -191,7 +194,7 @@ class GUI(xbmcgui.WindowXMLDialog): ) data = response.json() - track_data['track_name'] = data.get('name', '') + track_data['track_name'] = self._fix_encoding(data.get('name', '')) track_data['track_artists'] = [] # album/track image @@ -229,7 +232,7 @@ class GUI(xbmcgui.WindowXMLDialog): self.log('ok got artist_name from API') self.log(json.dumps(artist_name)) - track_data['track_artists'].append(artist_name) + track_data['track_artists'].append(self._fix_encoding(artist_name)) # get images images = album.get('images') @@ -257,7 +260,7 @@ class GUI(xbmcgui.WindowXMLDialog): self.log(track_image_url) track_data['track_image_url'] = track_image_url except Exception as e: - self.log('failed to get track data ' + str(e), xbmc.LOGERROR) + self.log('failed to get track data: ' + str(e), xbmc.LOGERROR) return track_data