From d52e1c420c6890f2ac2942721d8e0b311715ee4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 22 Sep 2020 17:33:06 +0200 Subject: [PATCH] sd-{login,netlink,network}: use TAKE_FD() in more places --- src/libsystemd/sd-login/sd-login.c | 13 +++---------- src/libsystemd/sd-netlink/sd-netlink.c | 3 +-- src/libsystemd/sd-network/sd-network.c | 12 +++--------- 3 files changed, 7 insertions(+), 21 deletions(-) diff --git a/src/libsystemd/sd-login/sd-login.c b/src/libsystemd/sd-login/sd-login.c index d8baa6f8af..939b2a5df4 100644 --- a/src/libsystemd/sd-login/sd-login.c +++ b/src/libsystemd/sd-login/sd-login.c @@ -997,20 +997,13 @@ _public_ int sd_login_monitor_new(const char *category, sd_login_monitor **m) { if (!good) return -EINVAL; - *m = FD_TO_MONITOR(fd); - fd = -1; - + *m = FD_TO_MONITOR(TAKE_FD(fd)); return 0; } _public_ sd_login_monitor* sd_login_monitor_unref(sd_login_monitor *m) { - int fd; - - if (!m) - return NULL; - - fd = MONITOR_TO_FD(m); - close_nointr(fd); + if (m) + close_nointr(MONITOR_TO_FD(m)); return NULL; } diff --git a/src/libsystemd/sd-netlink/sd-netlink.c b/src/libsystemd/sd-netlink/sd-netlink.c index ff0886d40b..6f283e31ff 100644 --- a/src/libsystemd/sd-netlink/sd-netlink.c +++ b/src/libsystemd/sd-netlink/sd-netlink.c @@ -135,8 +135,7 @@ int netlink_open_family(sd_netlink **ret, int family) { r = sd_netlink_open_fd(ret, fd); if (r < 0) return r; - - fd = -1; + TAKE_FD(fd); return 0; } diff --git a/src/libsystemd/sd-network/sd-network.c b/src/libsystemd/sd-network/sd-network.c index ce6ae846c5..832ec1703e 100644 --- a/src/libsystemd/sd-network/sd-network.c +++ b/src/libsystemd/sd-network/sd-network.c @@ -373,19 +373,13 @@ _public_ int sd_network_monitor_new(sd_network_monitor **m, const char *category if (!good) return -EINVAL; - *m = FD_TO_MONITOR(fd); - fd = -1; - + *m = FD_TO_MONITOR(TAKE_FD(fd)); return 0; } _public_ sd_network_monitor* sd_network_monitor_unref(sd_network_monitor *m) { - int fd; - - if (m) { - fd = MONITOR_TO_FD(m); - close_nointr(fd); - } + if (m) + close_nointr(MONITOR_TO_FD(m)); return NULL; }