make some operations more robust
This commit is contained in:
parent
c710e76912
commit
43619bc1ca
1 changed files with 6 additions and 2 deletions
|
@ -82,11 +82,15 @@ class Pyprland:
|
||||||
async def read_events_loop(self):
|
async def read_events_loop(self):
|
||||||
"Consumes the event loop and calls corresponding handlers"
|
"Consumes the event loop and calls corresponding handlers"
|
||||||
while not self.stopped:
|
while not self.stopped:
|
||||||
|
try:
|
||||||
data = (await self.event_reader.readline()).decode()
|
data = (await self.event_reader.readline()).decode()
|
||||||
|
except UnicodeDecodeError:
|
||||||
|
self.log.error("Invalid unicode while reading events")
|
||||||
|
continue
|
||||||
if not data:
|
if not data:
|
||||||
self.log.critical("Reader starved")
|
self.log.critical("Reader starved")
|
||||||
return
|
return
|
||||||
cmd, params = data.split(">>")
|
cmd, params = data.split(">>", 1)
|
||||||
full_name = f"event_{cmd}"
|
full_name = f"event_{cmd}"
|
||||||
|
|
||||||
await self._callHandler(full_name, params)
|
await self._callHandler(full_name, params)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue