From ccaa30c199499b2de22c2d0cc7bd53b4fa7acf1e Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 1 Oct 2020 22:21:05 +0200 Subject: [PATCH] socket-proxy: port to new sd_event_source_set_exit_on_failure() API --- src/socket-proxy/socket-proxyd.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/socket-proxy/socket-proxyd.c b/src/socket-proxy/socket-proxyd.c index 9924220f03..64dd623c80 100644 --- a/src/socket-proxy/socket-proxyd.c +++ b/src/socket-proxy/socket-proxyd.c @@ -528,11 +528,8 @@ static int accept_cb(sd_event_source *s, int fd, uint32_t revents, void *userdat } r = sd_event_source_set_enabled(s, SD_EVENT_ONESHOT); - if (r < 0) { - log_error_errno(r, "Error while re-enabling listener with ONESHOT: %m"); - sd_event_exit(context->event, r); - return r; - } + if (r < 0) + return log_error_errno(r, "Error while re-enabling listener with ONESHOT: %m"); return 1; } @@ -561,11 +558,14 @@ static int add_listen_socket(Context *context, int fd) { r = set_ensure_put(&context->listen, NULL, source); if (r < 0) { - log_error_errno(r, "Failed to add source to set: %m"); sd_event_source_unref(source); - return r; + return log_error_errno(r, "Failed to add source to set: %m"); } + r = sd_event_source_set_exit_on_failure(source, true); + if (r < 0) + return log_error_errno(r, "Failed to enable exit-on-failure logic: %m"); + /* Set the watcher to oneshot in case other processes are also * watching to accept(). */ r = sd_event_source_set_enabled(source, SD_EVENT_ONESHOT);