mirror of
https://github.com/badaix/snapcast.git
synced 2025-08-03 16:48:52 +02:00
Catch exception in io_callback
This commit is contained in:
parent
550f7c5b3f
commit
fd4d82126f
1 changed files with 20 additions and 16 deletions
|
@ -448,24 +448,28 @@ class MPDWrapper(object):
|
|||
"code": -32700, "message": "Parse error", "data": str(e)}, "id": id})
|
||||
|
||||
def io_callback(self, fd, event):
|
||||
logger.debug("IO event %r on fd %r" % (event, fd))
|
||||
if event & GLib.IO_HUP:
|
||||
logger.debug("IO_HUP")
|
||||
return True
|
||||
elif event & GLib.IO_IN:
|
||||
chunk = fd.read()
|
||||
for char in chunk:
|
||||
if char == '\n':
|
||||
logger.info(f'Received: {self._buffer}')
|
||||
self.control(self._buffer)
|
||||
self._buffer = ''
|
||||
else:
|
||||
self._buffer += char
|
||||
try:
|
||||
logger.error(f'IO event "{event}" on fd "{fd}" (type: "{type(fd)}"')
|
||||
if event & GLib.IO_HUP:
|
||||
logger.debug("IO_HUP")
|
||||
return True
|
||||
elif event & GLib.IO_IN:
|
||||
chunk = fd.read()
|
||||
for char in chunk:
|
||||
if char == '\n':
|
||||
logger.info(f'Received: {self._buffer}')
|
||||
self.control(self._buffer)
|
||||
self._buffer = ''
|
||||
else:
|
||||
self._buffer += char
|
||||
return True
|
||||
except Exception as e:
|
||||
logger.error(f'Exception in io_callback: "{str(e)}"')
|
||||
return True
|
||||
|
||||
def socket_callback(self, fd, event):
|
||||
try:
|
||||
logger.debug("Socket event %r on fd %r" % (event, fd))
|
||||
logger.debug(f'Socket event "{event}" on fd "{fd}"')
|
||||
if event & GLib.IO_HUP:
|
||||
self.reconnect()
|
||||
return True
|
||||
|
@ -485,8 +489,8 @@ class MPDWrapper(object):
|
|||
updated = True
|
||||
self.idle_enter()
|
||||
return True
|
||||
except:
|
||||
logger.error('Exception in socket_callback')
|
||||
except Exception as e:
|
||||
logger.error(f'Exception in socket_callback: "{str(e)}"')
|
||||
self.reconnect()
|
||||
return True
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue