diff --git a/resources/lib/utils.py b/resources/lib/utils.py index 7878a08e..11a059b3 100644 --- a/resources/lib/utils.py +++ b/resources/lib/utils.py @@ -43,10 +43,16 @@ def window(property, value=None, clear=False, windowid=10000): # Get or set window property WINDOW = xbmcgui.Window(windowid) + #setproperty accepts both string and unicode but utf-8 strings are adviced by kodi devs because some unicode can give issues + if isinstance(property, unicode): + property = property.encode("utf-8") + if isinstance(value, unicode): + value = value.encode("utf-8") + if clear: WINDOW.clearProperty(property) - elif value is not None: #setproperty accepts both string and unicode but utf-8 string seems best practice to pass - WINDOW.setProperty(property.encode("utf-8"), value.encode("utf-8")) + elif value is not None: + WINDOW.setProperty(property, value) else: #getproperty returns string so convert to unicode return WINDOW.getProperty(property).decode("utf-8")