Skip to content
This repository was archived by the owner on Apr 2, 2026. It is now read-only.
This repository was archived by the owner on Apr 2, 2026. It is now read-only.

Addon Exception - unicode file/path issue #2

@mgonzales71

Description

@mgonzales71

Hi cibboy,

Found your addon today and decided to give it a test.

Hit an exception with the addon cleanup portion of the script, looks like it is due to special characters in unicode file / path names.

Error:

22:03:52 T:6372  NOTICE: [Profile Cleaner] - Addon cleanup started at 2016-05-30 22:03:30
22:03:56 T:6372   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.WindowsError'>
                                            Error Contents: (2, 'The system cannot find the file specified', 'C:\\Users\\Mario\\AppData\\Roaming\\Kodi\\userdata\\addon_data\\script.skin.helper.service\\artworkcache\\Cherno\xb4bil, la noche del fin del mundo-2008.xml')
                                            Traceback (most recent call last):
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 981, in <module>
                                                elif selection == 3: remain = True; Cleaner().PerformCleanup(8)
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 963, in PerformCleanup
                                                self.AddonCleanup()
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 775, in AddonCleanup
                                                self.totalAddonSize = self.totalAddonSize + self.GetFolderSize(os.path.join(addonData, item))
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 752, in GetFolderSize
                                                total_size += os.path.getsize(fp)
                                              File "C:\Program Files (x86)\Kodi\system\python\Lib\genericpath.py", line 49, in getsize
                                                return os.stat(filename).st_size
                                            WindowsError: (2, 'The system cannot find the file specified', 'C:\\Users\\Mario\\AppData\\Roaming\\Kodi\\userdata\\addon_data\\script.skin.helper.service\\artworkcache\\Cherno\xb4bil, la noche del fin del mundo-2008.xml')
                                            -->End of Python script error report<--

the path and file name:

C:\Users\Mario\AppData\Roaming\Kodi\userdata\addon_data\script.skin.helper.service\artworkcache\Chernóbil, la noche del fin del mundo-2008.xml

If I delete the file in question the script eventually hit another file / path with a special character in it and again throws an exception:

22:15:52 T:6988  NOTICE: [Profile Cleaner] - Addon cleanup started at 2016-05-30 22:15:30
22:15:56 T:6988   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.WindowsError'>
                                            Error Contents: (2, 'The system cannot find the file specified', 'C:\\Users\\Mario\\AppData\\Roaming\\Kodi\\userdata\\addon_data\\script.skin.helper.service\\artworkcache\\Csernobil O\xa8ro\xa8kse\xb4ge a Zo\xb4na-2011.xml')
                                            Traceback (most recent call last):
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 981, in <module>
                                                elif selection == 3: remain = True; Cleaner().PerformCleanup(8)
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 963, in PerformCleanup
                                                self.AddonCleanup()
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 775, in AddonCleanup
                                                self.totalAddonSize = self.totalAddonSize + self.GetFolderSize(os.path.join(addonData, item))
                                              File "C:\Users\Mario\AppData\Roaming\Kodi\addons\script.profilecleaner\script.py", line 752, in GetFolderSize
                                                total_size += os.path.getsize(fp)
                                              File "C:\Program Files (x86)\Kodi\system\python\Lib\genericpath.py", line 49, in getsize
                                                return os.stat(filename).st_size
                                            WindowsError: (2, 'The system cannot find the file specified', 'C:\\Users\\Mario\\AppData\\Roaming\\Kodi\\userdata\\addon_data\\script.skin.helper.service\\artworkcache\\Csernobil O\xa8ro\xa8kse\xb4ge a Zo\xb4na-2011.xml')
                                            -->End of Python script error report<--

This time for:

C:\Users\Mario\AppData\Roaming\Kodi\userdata\addon_data\script.skin.helper.service\artworkcache\Csernobil Öröksége a Zóna-2011.xml

a pretty picture 😄

2016-05-30_22-08-44

Thanks for coding this - I had considered trying the texture cache maintenance utillity but don't want to mess with scripts especially when I have non-computer folks that I don't want to hold a special class to teach them how to use it.

Have a great week!

Mario

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions