Fix crash when sleeping/waking up device

This commit is contained in:
angelblue05 2016-07-22 17:10:35 -05:00
parent e97a3a616d
commit 793bd66554
4 changed files with 25 additions and 4 deletions

View file

@ -289,6 +289,7 @@ class DownloadUtils():
log("Unable to convert the response for: %s" % url, 1)
else: # Bad status code
log("=== Bad status response: %s ===" % r.status_code, -1)
r.raise_for_status()
##### EXCEPTIONS #####

View file

@ -195,10 +195,15 @@ class KodiMonitor(xbmc.Monitor):
finally:
embycursor.close()'''
elif method == "System.OnSleep":
# Connection is going to sleep
log("Marking the server as offline. System.OnSleep activating.", 1)
window('emby_online', value="sleep")
elif method == "System.OnWake":
# Allow network to wake up
xbmc.sleep(10000)
window('emby_online', value="false")
window('emby_onWake', value="true")

View file

@ -23,7 +23,7 @@ class UserClient(threading.Thread):
# Borg - multiple instances, shared state
_shared_state = {}
stopClient = False
stop_thread = False
auth = True
retry = 0
@ -430,7 +430,7 @@ class UserClient(threading.Thread):
self.auth = True
if self.stopClient == True:
if self.stop_thread == True:
# If stopping the client didn't work
break
@ -443,4 +443,4 @@ class UserClient(threading.Thread):
def stopClient(self):
# When emby for kodi terminates
self.stopClient = True
self.stop_thread = True

View file

@ -232,6 +232,20 @@ class Service():
self.server_online = False
elif window('emby_online') == "sleep":
# device going to sleep
if self.websocket_running:
log("Stop websocket thread")
ws.stopClient()
ws = wsc.WebSocket_Client()
self.websocket_running = False
if self.library_running:
log("Stop library thread")
library.stopThread()
library = librarysync.LibrarySync()
self.library_running = False
else:
# Server is online
if not self.server_online:
@ -254,6 +268,7 @@ class Service():
# Start the userclient thread
if not self.userclient_running:
log("Start user thread")
self.userclient_running = True
user.start()