tinterface: check if future already done in handle_disconnect - electrum - Electrum Bitcoin wallet HTML git clone https://git.parazyd.org/electrum DIR Log DIR Files DIR Refs DIR Submodules --- DIR commit 935ab9a12f4cd6cf8e06c7207fafda72bb6ea1c7 DIR parent c6a54f05f5ba431e069cba0eef14a2df1e596c14 HTML Author: SomberNight <somber.night@protonmail.com> Date: Fri, 28 Jun 2019 21:13:33 +0200 interface: check if future already done in handle_disconnect future could get cancelled in network.py in which case set_result raised Diffstat: M electrum/interface.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- DIR diff --git a/electrum/interface.py b/electrum/interface.py t@@ -336,7 +336,8 @@ class Interface(Logger): self.logger.debug(f"(disconnect) trace for {repr(e)}", exc_info=True) finally: await self.network.connection_down(self) - self.got_disconnected.set_result(1) + if not self.got_disconnected.done(): + self.got_disconnected.set_result(1) # if was not 'ready' yet, schedule waiting coroutines: self.ready.cancel() return wrapper_func