Mercurial > hg > octave-nkf > gnulib-hg
changeset 17932:587c85f38b58
dup2: doc and test for Android bug
Reported by Kevin Cernekee in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-02/msg00125.html
* doc/posix-functions/dup2.texi (dup2): Document the bug.
* m4/dup2.m4 (gl_FUNC_DUP2): Test for the bug.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Mon, 23 Feb 2015 10:34:40 -0800 |
parents | 70199a43c7c8 |
children | 7dd80fb0f8e2 |
files | ChangeLog doc/posix-functions/dup2.texi m4/dup2.m4 |
diffstat | 3 files changed, 14 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2015-02-23 Paul Eggert <eggert@cs.ucla.edu> + + dup2: doc and test for Android bug + Reported by Kevin Cernekee in: + http://lists.gnu.org/archive/html/bug-gnulib/2015-02/msg00125.html + * doc/posix-functions/dup2.texi (dup2): Document the bug. + * m4/dup2.m4 (gl_FUNC_DUP2): Test for the bug. + 2015-02-23 Kevin Cernekee <cernekee@google.com> Replace dup2() on Android
--- a/doc/posix-functions/dup2.texi +++ b/doc/posix-functions/dup2.texi @@ -25,6 +25,10 @@ Cygwin 1.7.25. @item +This function fails with @code{EINVAL} when duplicating an fd to itself: +Android. + +@item This function resets the @code{FD_CLOEXEC} flag when duplicating an fd to itself on some platforms: Haiku.
--- a/m4/dup2.m4 +++ b/m4/dup2.m4 @@ -1,4 +1,4 @@ -#serial 23 +#serial 24 dnl Copyright (C) 2002, 2005, 2007, 2009-2015 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -45,7 +45,7 @@ if (fcntl (1, F_SETFD, FD_CLOEXEC) == -1) result |= 1; #endif - if (dup2 (1, 1) == 0) + if (dup2 (1, 1) != 1) result |= 2; #ifdef FD_CLOEXEC if (fcntl (1, F_GETFD) != FD_CLOEXEC)