mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-19 14:08:11 +00:00
fix(core): queue events from iface if all tasks waiting on that iface are gone
this juuust might fix unexplained freezes on hardware
This commit is contained in:
parent
ff869dd864
commit
759ce5bc14
@ -93,6 +93,9 @@ def close(task: Task) -> None:
|
|||||||
"""
|
"""
|
||||||
for iface in _paused: # pylint: disable=consider-using-dict-items
|
for iface in _paused: # pylint: disable=consider-using-dict-items
|
||||||
_paused[iface].discard(task)
|
_paused[iface].discard(task)
|
||||||
|
for iface in _paused: # pylint: disable=consider-using-dict-items
|
||||||
|
if not _paused[iface]:
|
||||||
|
del _paused[iface]
|
||||||
_queue.discard(task)
|
_queue.discard(task)
|
||||||
task.close()
|
task.close()
|
||||||
finalize(task, GeneratorExit())
|
finalize(task, GeneratorExit())
|
||||||
|
Loading…
Reference in New Issue
Block a user