Avoid extra epoll modifies when EPOLLOUT already set

This commit is contained in:
Mark Qvist 2026-08-24 20:52:23 +02:00
parent 5e013464da
commit 77f7632584

View file

@ -797,8 +797,9 @@ class BackboneClientInterface(Interface):
def process_outgoing(self, data):
if self.online and not self.detached:
try:
buffer_was_empty = len(self.transmit_buffer) == 0
self.transmit_buffer += bytes([HDLC.FLAG])+HDLC.escape(data)+bytes([HDLC.FLAG])
BackboneInterface.tx_ready(self)
if buffer_was_empty: BackboneInterface.tx_ready(self)
except Exception as e:
RNS.log("Exception occurred while transmitting via "+str(self)+", tearing down interface", RNS.LOG_ERROR)