fix some exections with Pickel loading that were stopping the service from starting
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<addon id="plugin.video.embycon"
|
||||
name="EmbyCon"
|
||||
version="1.9.20"
|
||||
version="1.9.21"
|
||||
provider-name="Team B">
|
||||
<requires>
|
||||
<import addon="xbmc.python" version="2.25.0"/>
|
||||
|
||||
@@ -288,7 +288,7 @@ def clear_cached_server_data():
|
||||
|
||||
|
||||
def clear_old_cache_data():
|
||||
log.debug("clear_old_cache_data() called")
|
||||
log.debug("clear_old_cache_data() : called")
|
||||
|
||||
addon_dir = xbmc.translatePath(xbmcaddon.Addon().getAddonInfo('profile'))
|
||||
dirs, files = xbmcvfs.listdir(addon_dir)
|
||||
@@ -296,21 +296,33 @@ def clear_old_cache_data():
|
||||
del_count = 0
|
||||
for filename in files:
|
||||
if filename.startswith("cache_") and filename.endswith(".pickle"):
|
||||
log.debug("Checking CacheFile: {0}", filename)
|
||||
log.debug("clear_old_cache_data() : Checking CacheFile : {0}", filename)
|
||||
|
||||
with open(os.path.join(addon_dir, filename), 'rb') as handle:
|
||||
cache_item = cPickle.load(handle)
|
||||
cache_item = None
|
||||
for x in range(0, 5):
|
||||
try:
|
||||
with open(os.path.join(addon_dir, filename), 'rb') as handle:
|
||||
cache_item = cPickle.load(handle)
|
||||
break
|
||||
except Exception as error:
|
||||
log.debug("clear_old_cache_data() : Pickle load error : {0}", error)
|
||||
cache_item = None
|
||||
xbmc.sleep(1000)
|
||||
|
||||
item_last_used = -1
|
||||
if cache_item.date_last_used is not None:
|
||||
item_last_used = time.time() - cache_item.date_last_used
|
||||
if cache_item is not None:
|
||||
item_last_used = -1
|
||||
if cache_item.date_last_used is not None:
|
||||
item_last_used = time.time() - cache_item.date_last_used
|
||||
|
||||
log.debug("Cache item last used : {0} sec ago", item_last_used)
|
||||
if item_last_used == -1 or item_last_used > (3600 * 24 * 7):
|
||||
log.debug("Deleting cache item age : {0}", item_last_used)
|
||||
log.debug("clear_old_cache_data() : Cache item last used : {0} sec ago", item_last_used)
|
||||
if item_last_used == -1 or item_last_used > (3600 * 24 * 7):
|
||||
log.debug("clear_old_cache_data() : Deleting cache item age : {0}", item_last_used)
|
||||
xbmcvfs.delete(os.path.join(addon_dir, filename))
|
||||
del_count += 1
|
||||
else:
|
||||
log.debug("clear_old_cache_data() : Deleting unloadable cache item")
|
||||
xbmcvfs.delete(os.path.join(addon_dir, filename))
|
||||
del_count += 1
|
||||
|
||||
log.debug("Cache items deleted : {0}", del_count)
|
||||
log.debug("clear_old_cache_data() : Cache items deleted : {0}", del_count)
|
||||
|
||||
|
||||
|
||||
@@ -25,8 +25,6 @@ from resources.lib.datamanager import clear_old_cache_data
|
||||
|
||||
settings = xbmcaddon.Addon()
|
||||
|
||||
clear_old_cache_data()
|
||||
|
||||
# clear user and token when logging in
|
||||
home_window = HomeWindow()
|
||||
home_window.clearProperty("userid")
|
||||
@@ -36,6 +34,11 @@ home_window.clearProperty("Params")
|
||||
log = SimpleLogging('service')
|
||||
monitor = xbmc.Monitor()
|
||||
|
||||
try:
|
||||
clear_old_cache_data()
|
||||
except Exception as error:
|
||||
log.error("Error in clear_old_cache_data() : {0}", error)
|
||||
|
||||
# wait for 10 seconds for the Kodi splash screen to close
|
||||
i = 0
|
||||
while not monitor.abortRequested():
|
||||
|
||||
Reference in New Issue
Block a user