fix(esn): Fixes unicode problems
authorSebastian Golasch <sebastian.golasch@telekom.de>
Sun, 2 Jul 2017 19:24:26 +0000 (21:24 +0200)
committerSebastian Golasch <sebastian.golasch@telekom.de>
Sun, 2 Jul 2017 19:24:26 +0000 (21:24 +0200)
addon.xml
resources/lib/KodiHelper.py
resources/lib/NetflixSession.py

index 492844f79eacf471f42388c56985551744886f78..8f3b40af619a7ad70601cad0e5c4b6c9def13bc6 100644 (file)
--- a/addon.xml
+++ b/addon.xml
     <license>MIT</license>
     <forum>http://www.kodinerds.net/index.php/Thread/55607-Inputstream-Agile-Betatest-Netflix/</forum>
     <source>https://github.com/asciidisco/plugin.video.netflix</source>
     <license>MIT</license>
     <forum>http://www.kodinerds.net/index.php/Thread/55607-Inputstream-Agile-Betatest-Netflix/</forum>
     <source>https://github.com/asciidisco/plugin.video.netflix</source>
-    <news>v0.11.12 (2017-6-29)
+    <news>v0.11.12 (2017-07-02)
     - Fix missing isFirstUse inline setting
     - Fix dynamic ESN loading for widevine
     - Fix missing isFirstUse inline setting
     - Fix dynamic ESN loading for widevine
+    - Fix unicode decoding problems
 
     v0.11.11 (2017-4-10)
     - Portugese translations
 
     v0.11.11 (2017-4-10)
     - Portugese translations
index a40c5d85c45d4421cd7d0480fbce14cfbe1c97a3..a75f2e71f6ee3fb234ce7b90d4fa9743a13823c8 100644 (file)
@@ -775,7 +775,9 @@ class KodiHelper:
             if 'mpaa' in entry_keys:
                 infos.update({'mpaa': entry['mpaa']})
             else:
             if 'mpaa' in entry_keys:
                 infos.update({'mpaa': entry['mpaa']})
             else:
-                infos.update({'mpaa': str(entry['maturity']['board']) + '-' + str(entry['maturity']['value'])})
+                if entry.get('maturity', None) is not None:
+                    if entry['maturity']['board'] is not None and entry['maturity']['value'] is not None:
+                        infos.update({'mpaa': str(entry['maturity']['board'].encode('utf-8')) + '-' + str(entry['maturity']['value'].encode('utf-8'))})
         if 'rating' in entry_keys:
             infos.update({'rating': int(entry['rating']) * 2})
         if 'synopsis' in entry_keys:
         if 'rating' in entry_keys:
             infos.update({'rating': int(entry['rating']) * 2})
         if 'synopsis' in entry_keys:
index 09938afff46e6c8824fc4e20bb6ef62c4c83ae11..e5d32191bcb993adcf599f64d26897f14153fd02 100644 (file)
@@ -1250,7 +1250,7 @@ class NetflixSession:
                 'title': episode['info']['title'],
                 'year': episode['info']['releaseYear'],
                 'genres': self.parse_genres_for_video(video=episode, genres=genres),
                 'title': episode['info']['title'],
                 'year': episode['info']['releaseYear'],
                 'genres': self.parse_genres_for_video(video=episode, genres=genres),
-                'mpaa': str(episode['maturity']['rating']['board']) + ' ' + str(episode['maturity']['rating']['value']),
+                'mpaa': str(episode['maturity']['rating']['board']).encode('utf-8') + ' ' + str(episode['maturity']['rating']['value']).encode('utf-8'),
                 'maturity': episode['maturity'],
                 'playcount': (0, 1)[episode['watched']],
                 'rating': episode['userRating'].get('average', 0) if episode['userRating'].get('average', None) != None else episode['userRating'].get('predicted', 0),
                 'maturity': episode['maturity'],
                 'playcount': (0, 1)[episode['watched']],
                 'rating': episode['userRating'].get('average', 0) if episode['userRating'].get('average', None) != None else episode['userRating'].get('predicted', 0),