From 802d49917f484fc6d8400c4d2904351f99edce05 Mon Sep 17 00:00:00 2001 From: Ev3nt Date: Wed, 21 Oct 2026 13:23:05 +0300 Subject: [PATCH] Fix infinite waiting for response (ESOE-connect) --- src/remote/client/interface.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/remote/client/interface.cpp b/src/remote/client/interface.cpp index e993ddf83cc..c187d33242e 100644 --- a/src/remote/client/interface.cpp +++ b/src/remote/client/interface.cpp @@ -8554,7 +8554,7 @@ static void finalize(rem_port* port) // gracefully terminates. Rdb* rdb = port->port_context; - if (rdb) + if (rdb && !(port->port_flags & PORT_rdb_shutdown)) { PACKET* packet = &rdb->rdb_packet; @@ -9875,7 +9875,7 @@ static void send_packet(rem_port* port, PACKET* packet) RefMutexGuard guard(*port->port_write_sync, FB_FUNCTION); - if (port->port_flags & PORT_detached || port->port_state == rem_port::BROKEN) + if (port->port_flags & (PORT_rdb_shutdown | PORT_detached) || port->port_state == rem_port::BROKEN) { (Arg::Gds(isc_net_write_err) #ifdef DEV_BUILD @@ -9934,7 +9934,7 @@ static void send_partial_packet(rem_port* port, PACKET* packet) RefMutexGuard guard(*port->port_write_sync, FB_FUNCTION); - if (port->port_flags & PORT_detached || port->port_state == rem_port::BROKEN) + if (port->port_flags & (PORT_rdb_shutdown | PORT_detached) || port->port_state == rem_port::BROKEN) { (Arg::Gds(isc_net_write_err) #ifdef DEV_BUILD