]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
exec-util: use TAKE_FD() 26479/head
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 18 Feb 2023 17:09:22 +0000 (02:09 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 19 Feb 2023 03:17:52 +0000 (12:17 +0900)
src/shared/exec-util.c

index 51234fd02514899a3f5f651f2103ad5e798efc08..2e8f5b85627a6282bc2a948c7d4ec9b80f74b0d5 100644 (file)
@@ -160,8 +160,7 @@ static int do_execute(
                                 if (lseek(fd, 0, SEEK_SET) < 0)
                                         return log_error_errno(errno, "Failed to seek on serialization fd: %m");
 
-                                r = callbacks[STDOUT_GENERATE](fd, callback_args[STDOUT_GENERATE]);
-                                fd = -EBADF;
+                                r = callbacks[STDOUT_GENERATE](TAKE_FD(fd), callback_args[STDOUT_GENERATE]);
                                 if (r < 0)
                                         return log_error_errno(r, "Failed to process output from %s: %m", *path);
                         }
@@ -250,8 +249,7 @@ int execute_directories(
         if (lseek(fd, 0, SEEK_SET) < 0)
                 return log_error_errno(errno, "Failed to rewind serialization fd: %m");
 
-        r = callbacks[STDOUT_CONSUME](fd, callback_args[STDOUT_CONSUME]);
-        fd = -EBADF;
+        r = callbacks[STDOUT_CONSUME](TAKE_FD(fd), callback_args[STDOUT_CONSUME]);
         if (r < 0)
                 return log_error_errno(r, "Failed to parse returned data: %m");
         return 0;