anxdpanic / plugin.video.composite_for_plex

Composite allows media and metadata stored in the Plex Media Server (PMS) to be viewed and played using the Kodi 16+ interface
https://composite.page.link/forum
GNU General Public License v2.0
43 stars 11 forks source link

UTF-8 issues #193

Open michaelarnauts opened 3 years ago

michaelarnauts commented 3 years ago

The addon throws an error after I logged in. I assume it has something to do with UTF-8 encoding. My name is "Michaël", and the ë tend to give issues in certain applications.

2020-09-27 09:16:05.080 T:5564   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.KeyError'>
                                            Error Contents: u'\xeb'
                                            Traceback (most recent call last):
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\entry_point.py", line 18, in <module>
                                                composite.run(time.time())
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\composite.py", line 131, in run
                                                set_master_server.run(context)
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\routes\set_master_server.py", line 24, in run
                                                context.plex_network = plex.Plex(context.settings, load=True)
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plex.py", line 75, in __init__
                                                self.load()
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plex.py", line 197, in load
                                                if not self.discover():
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plex.py", line 289, in discover
                                                self.discover_all_servers()
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plex.py", line 394, in discover_all_servers
                                                self.server_list = self.get_myplex_servers()
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plex.py", line 466, in get_myplex_servers
                                                discovered_server.set_user(self.effective_user)
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plexserver.py", line 253, in set_user
                                                self.update_identification()
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plexserver.py", line 107, in update_identification
                                                self.plex_identification_string = self.create_plex_identification_string()
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plexserver.py", line 148, in create_plex_identification_string
                                                return '&'.join(self._create_kodi_header(headers))
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plexserver.py", line 1083, in _create_kodi_header
                                                return map(lambda x: '='.join((x[0], quote(x[1]))), headers.items())
                                              File "C:\Users\micha\AppData\Roaming\Kodi\addons\plugin.video.composite_for_plex\resources\lib\composite_addon\plex\plexserver.py", line 1083, in <lambda>
                                                return map(lambda x: '='.join((x[0], quote(x[1]))), headers.items())
                                              File "C:\Program Files\Kodi\system\python\Lib\urllib.py", line 1299, in quote
                                                return ''.join(map(quoter, s))
                                            KeyError: u'\xeb'
                                            -->End of Python script error report<--
michaelarnauts commented 3 years ago

After changing my name on Plex to Michael, it works fine, so it's definitely an encoding issue with the name.