From 6423323037f2a83898dc83fdf0b4492998a0e99b Mon Sep 17 00:00:00 2001 From: SomberNight Date: Mon, 27 Oct 2025 18:09:33 +0000 Subject: [PATCH] interface: PaddedRSTransport: keep in sync with e-x: flush on close ref https://github.com/spesmilo/electrumx/commit/f62f986b3308a9a0493e7560d194926c05f3ea51 note: ReplyAndDisconnect is specific to electrumx, however I think the name is descriptive enough to keep it here. --- electrum/interface.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/electrum/interface.py b/electrum/interface.py index 1e42fce6d..ecd6f99ad 100644 --- a/electrum/interface.py +++ b/electrum/interface.py @@ -428,6 +428,13 @@ class PaddedRSTransport(RSTransport): # No polling here, we always force-empty the buffer. self._force_send = True + async def close(self, *args, **kwargs): + '''Close the connection and return when closed.''' + # Flush buffer before disconnecting. This makes ReplyAndDisconnect work: + self._force_send = True + self._maybe_consume_sbuffer() + await super().close(*args, **kwargs) + class ServerAddr: