From ccd31de8bf4717f0dd889c97440b4037909eb3bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Wed, 29 Nov 2023 14:38:06 +0100 Subject: [PATCH] stdio-bridge: return immediately if we can Follow-up for 0321248b79d14ceddd36140b327332f145ae68e7. --- src/stdio-bridge/stdio-bridge.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/stdio-bridge/stdio-bridge.c b/src/stdio-bridge/stdio-bridge.c index ce2bd5f86f7..fe551cfaeaa 100644 --- a/src/stdio-bridge/stdio-bridge.c +++ b/src/stdio-bridge/stdio-bridge.c @@ -183,12 +183,12 @@ static int run(int argc, char *argv[]) { r = sd_bus_process(a, &m); if (ERRNO_IS_NEG_DISCONNECT(r)) /* Treat 'connection reset by peer' as clean exit condition */ - break; + return 0; if (r < 0) return log_error_errno(r, "Failed to process bus a: %m"); if (m) { if (sd_bus_message_is_signal(m, "org.freedesktop.DBus.Local", "Disconnected")) - break; + return 0; r = sd_bus_send(b, m, NULL); if (r < 0) @@ -200,12 +200,12 @@ static int run(int argc, char *argv[]) { r = sd_bus_process(b, &m); if (ERRNO_IS_NEG_DISCONNECT(r)) /* Treat 'connection reset by peer' as clean exit condition */ - break; + return 0; if (r < 0) return log_error_errno(r, "Failed to process bus: %m"); if (m) { if (sd_bus_message_is_signal(m, "org.freedesktop.DBus.Local", "Disconnected")) - break; + return 0; r = sd_bus_send(a, m, NULL); if (r < 0) @@ -247,8 +247,6 @@ static int run(int argc, char *argv[]) { if (r < 0 && !ERRNO_IS_TRANSIENT(r)) /* don't be bothered by signals, i.e. EINTR */ return log_error_errno(r, "ppoll() failed: %m"); } - - return 0; } DEFINE_MAIN_FUNCTION(run);