diff options
Diffstat (limited to 'package/system/procd/patches/0002-early-remove-superfluous-close-of-stdio-file-descrip.patch')
-rw-r--r-- | package/system/procd/patches/0002-early-remove-superfluous-close-of-stdio-file-descrip.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/package/system/procd/patches/0002-early-remove-superfluous-close-of-stdio-file-descrip.patch b/package/system/procd/patches/0002-early-remove-superfluous-close-of-stdio-file-descrip.patch new file mode 100644 index 0000000..0969832 --- /dev/null +++ b/package/system/procd/patches/0002-early-remove-superfluous-close-of-stdio-file-descrip.patch @@ -0,0 +1,40 @@ +From 1edd25cfa0a26dac1ca5d49bce479ebdea336437 Mon Sep 17 00:00:00 2001 +From: Gabor Juhos <juhosg@openwrt.org> +Date: Fri, 19 Jul 2013 08:21:17 +0200 +Subject: [PATCH 2/2] early: remove superfluous close of stdio file + descriptors + +'man dup2' says: + + dup2() makes newfd be the copy of oldfd, closing newfd first if + necessary, but note the following: + + * If oldfd is not a valid file descriptor, then the call fails, + and newfd is not closed. + + * If oldfd is a valid file descriptor, and newfd has the same + value as oldfd, then dup2() does nothing, and returns newfd. + +Signed-off-by: Gabor Juhos <juhosg@openwrt.org> +--- + early.c | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/early.c b/early.c +index 204623b..f9e3277 100644 +--- a/early.c ++++ b/early.c +@@ -53,10 +53,6 @@ static void early_console(const char *dev) + mkdev("*console", 0600); + + dd = open(dev, O_RDWR); +- close(STDIN_FILENO); +- close(STDOUT_FILENO); +- close(STDERR_FILENO); +- + if (dd < 0) { + ERROR("Failed to open %s\n", dev); + return; +-- +1.7.10 + |