4e66b072da
* chore: update libuv patch for loop integration * chore: update patches Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
36 lines
1 KiB
Diff
36 lines
1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Ben Noordhuis <info@bnoordhuis.nl>
|
|
Date: Sat, 5 Mar 2022 18:55:49 +0100
|
|
Subject: unix: simplify uv__cloexec_fcntl() (#3492)
|
|
|
|
FD_CLOEXEC is the only defined flag for fcntl(F_SETFD) so don't bother
|
|
getting the status of that flag first with fcntl(F_GETFD), just set it.
|
|
|
|
diff --git a/deps/uv/src/unix/core.c b/deps/uv/src/unix/core.c
|
|
index 71e9c525c4a77b8b5322e8516c58329100a8d951..a87b96cfc1dfdc88fa712a4fa991320ff28f2dcd 100644
|
|
--- a/deps/uv/src/unix/core.c
|
|
+++ b/deps/uv/src/unix/core.c
|
|
@@ -649,21 +649,9 @@ int uv__cloexec_fcntl(int fd, int set) {
|
|
int flags;
|
|
int r;
|
|
|
|
- do
|
|
- r = fcntl(fd, F_GETFD);
|
|
- while (r == -1 && errno == EINTR);
|
|
-
|
|
- if (r == -1)
|
|
- return UV__ERR(errno);
|
|
-
|
|
- /* Bail out now if already set/clear. */
|
|
- if (!!(r & FD_CLOEXEC) == !!set)
|
|
- return 0;
|
|
-
|
|
+ flags = 0;
|
|
if (set)
|
|
- flags = r | FD_CLOEXEC;
|
|
- else
|
|
- flags = r & ~FD_CLOEXEC;
|
|
+ flags = FD_CLOEXEC;
|
|
|
|
do
|
|
r = fcntl(fd, F_SETFD, flags);
|