From: David Tardon Date: Fri, 21 Apr 2023 13:34:11 +0000 (+0200) Subject: initctl: use _cleanup_ X-Git-Tag: v254-rc1~603^2~8 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0a956e8e02b60329ff683db27369cbfdabf477aa;p=thirdparty%2Fsystemd.git initctl: use _cleanup_ --- diff --git a/src/initctl/initctl.c b/src/initctl/initctl.c index b7fd215acd9..d1b7c305624 100644 --- a/src/initctl/initctl.c +++ b/src/initctl/initctl.c @@ -284,7 +284,7 @@ static int server_init(Server *s, unsigned n_sockets) { static int process_event(Server *s, struct epoll_event *ev) { int r; - Fifo *f; + _cleanup_(fifo_freep) Fifo *f = NULL; assert(s); assert(ev); @@ -295,11 +295,10 @@ static int process_event(Server *s, struct epoll_event *ev) { f = (Fifo*) ev->data.ptr; r = fifo_process(f); - if (r < 0) { - log_info_errno(r, "Got error on fifo: %m"); - fifo_free(f); - return r; - } + if (r < 0) + return log_info_errno(r, "Got error on fifo: %m"); + + TAKE_PTR(f); return 0; }