changeset 9230:442fca6d294a

Fix test-closein on Solaris 10. * tests/test-closein.c (main): Don't assume stdin can be inherited closed on all systems. * tests/test-closein.sh: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
author Eric Blake <ebb9@byu.net>
date Fri, 28 Sep 2007 06:33:50 -0600
parents 11c77fefd9e5
children fca4f828f7a2
files ChangeLog tests/test-closein.c tests/test-closein.sh
diffstat 3 files changed, 13 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-09-28  Eric Blake  <ebb9@byu.net>
+
+	Fix test-closein on Solaris 10.
+	* tests/test-closein.c (main): Don't assume stdin can be inherited
+	closed on all systems.
+	* tests/test-closein.sh: Likewise.
+
 2007-09-28  Jim Meyering  <jim@meyering.net>
 
 	* m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
--- a/tests/test-closein.c
+++ b/tests/test-closein.c
@@ -3,7 +3,7 @@
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
+   the Free Software Foundation; either version 3, or (at your option)
    any later version.
 
    This program is distributed in the hope that it will be useful,
@@ -23,6 +23,7 @@
 
 #include <stdio.h>
 #include <stdlib.h>
+#include <unistd.h>
 
 #include "binary-io.h"
 
@@ -43,6 +44,9 @@
      unreliable on text mode input.  */
   SET_BINARY (0);
 
+  if (argc > 2)
+    close (0);
+
   if (argc > 1)
     i = fread (buf, 1, 6, stdin);
   return 0;
--- a/tests/test-closein.sh
+++ b/tests/test-closein.sh
@@ -30,7 +30,7 @@
 ./test-closein${EXEEXT} consume </dev/null || exit 1
 
 # Test for error when read fails because no file available
-./test-closein${EXEEXT} consume <&- 2>/dev/null && exit 1
+./test-closein${EXEEXT} consume close <&- 2>/dev/null && exit 1
 
 # Cleanup
 rm -fr $tmpfiles