From 03e334a1c7dc8c20c38902aa039440763acc9b17 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 18 Mar 2014 19:22:43 +0100 Subject: util: replace close_nointr_nofail() by a more useful safe_close() safe_close() automatically becomes a NOP when a negative fd is passed, and returns -1 unconditionally. This makes it easy to write lines like this: fd = safe_close(fd); Which will close an fd if it is open, and reset the fd variable correctly. By making use of this new scheme we can drop a > 200 lines of code that was required to test for non-negative fds or to reset the closed fd variable afterwards. --- src/core/dbus.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'src/core/dbus.c') diff --git a/src/core/dbus.c b/src/core/dbus.c index 72f36bdc1c..d482e6c537 100644 --- a/src/core/dbus.c +++ b/src/core/dbus.c @@ -1086,10 +1086,7 @@ void bus_done(Manager *m) { if (m->private_listen_event_source) m->private_listen_event_source = sd_event_source_unref(m->private_listen_event_source); - if (m->private_listen_fd >= 0) { - close_nointr_nofail(m->private_listen_fd); - m->private_listen_fd = -1; - } + m->private_listen_fd = safe_close(m->private_listen_fd); } int bus_fdset_add_all(Manager *m, FDSet *fds) { -- cgit v1.2.3-54-g00ecf