# HG changeset patch # User Eric Blake # Date 1362512780 25200 # Node ID aea18ef5eadd346add1a690c853fcab98cc7e4b2 # Parent 62a78719f6c5d272e162dacd9e64108441e1ed96 execute: drop dead code On several platforms, I noticed this compile warning: gcc -DHAVE_CONFIG_H -I. -I../../gllib -I.. -DGNULIB_STRICT_CHECKING=1 -Wall -MT execute.o -MD -MP -MF .deps/execute.Tpo -c -o execute.o ../../gllib/execute.c ../../gllib/execute.c:64:1: warning: ‘nonintr_close’ defined but not used [-Wunused-function] ../../gllib/execute.c:77:1: warning: ‘nonintr_open’ defined but not used [-Wunused-function] The warning first surfaced when commit bdaf232 (Nov 2012) finally pointed out that these wrappers were no longer needed on posix-y systems, although the code has been unused since commit d629f6d (Jan 2009) which removed all use of open()/close() in favor of posix_spawn() instead. The only platform remaining where the wrappers are used (and no warnings issued) is mingw, but according to Microsoft's documentation [1] at the time of this patch, mingw's libc never fails open or close with EINTR; not to mention the fact that the documentation of the wrapper mentions it is primarily useful for SIGSTOP, a concept not present on mingw. [1]http://msdn.microsoft.com/en-us/library/z0kc8e3z%28v=vs.80%29.aspx * lib/execute.c (nonintr_close, nonintr_open): Delete. Signed-off-by: Eric Blake diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-03-05 Eric Blake + + execute: drop dead code + * lib/execute.c (nonintr_close, nonintr_open): Delete. + 2013-03-04 Paul Eggert non-recursive-gnulib-prefix-hack: port coreutils 8.21 to HP NonStop diff --git a/lib/execute.c b/lib/execute.c --- a/lib/execute.c +++ b/lib/execute.c @@ -54,42 +54,6 @@ #undef close -#ifdef EINTR - -/* EINTR handling for close(), open(). - These functions can return -1/EINTR even though we don't have any - signal handlers set up, namely when we get interrupted via SIGSTOP. */ - -static int -nonintr_close (int fd) -{ - int retval; - - do - retval = close (fd); - while (retval < 0 && errno == EINTR); - - return retval; -} -#define close nonintr_close - -static int -nonintr_open (const char *pathname, int oflag, mode_t mode) -{ - int retval; - - do - retval = open (pathname, oflag, mode); - while (retval < 0 && errno == EINTR); - - return retval; -} -#undef open /* avoid warning on VMS */ -#define open nonintr_open - -#endif - - /* Execute a command, optionally redirecting any of the three standard file descriptors to /dev/null. Return its exit code. If it didn't terminate correctly, exit if exit_on_error is true, otherwise