openpty: fix bug where HAVE_OPENPTY is mistakenly 1
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 8 Feb 2013 16:03:23 +0000 (08:03 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 8 Feb 2013 16:04:03 +0000 (08:04 -0800)
Problem reported by Mats Erik Andersson in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00051.html>.
* m4/pty.m4 (gl_FUNC_OPENPTY): Define HAVE_OPENPTY when the
openpty function exists, not merely when we intend to replace it.
This corrects the 2013-01-31 patch, which mistakenly defined
HAVE_OPENPTY even on hosts that lacked it.

ChangeLog
m4/pty.m4

index aee3765..9f1b60f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2013-02-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       openpty: fix bug where HAVE_OPENPTY is mistakenly 1
+       Problem reported by Mats Erik Andersson in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00051.html>.
+       * m4/pty.m4 (gl_FUNC_OPENPTY): Define HAVE_OPENPTY when the
+       openpty function exists, not merely when we intend to replace it.
+       This corrects the 2013-01-31 patch, which mistakenly defined
+       HAVE_OPENPTY even on hosts that lacked it.
+
 2013-02-07  Paul Eggert  <eggert@cs.ucla.edu>
 
        secure_getenv: fix include typo
index 12e681b..f889831 100644 (file)
--- a/m4/pty.m4
+++ b/m4/pty.m4
@@ -98,6 +98,8 @@ AC_DEFUN([gl_FUNC_OPENPTY],
 #endif
 ]])
   if test $ac_cv_have_decl_openpty = yes; then
+    AC_DEFINE([HAVE_OPENPTY], [1],
+      [Define to 1 if the system has the 'openpty' function.])
     dnl The system has openpty.
     dnl Prefer glibc's const-safe prototype, if available.
     AC_CACHE_CHECK([for const-safe openpty signature],
@@ -122,18 +124,14 @@ AC_DEFUN([gl_FUNC_OPENPTY],
         ],
         [gl_cv_func_openpty_const=yes], [gl_cv_func_openpty_const=no])
       ])
-  fi
-  if test $gl_cv_func_openpty_const = yes; then
-    HAVE_OPENPTY=1
+    if test $gl_cv_func_openpty_const != yes; then
+      REPLACE_OPENPTY=1
+    fi
   else
-    dnl We need gnulib's openpty.
+    dnl The system does not have openpty.
+    HAVE_OPENPTY=0
     dnl Prerequisites of lib/openpty.c in this case.
-    AC_CHECK_FUNCS([_getpty posix_openpt], [HAVE_OPENPTY=1], [HAVE_OPENPTY=0])
-    REPLACE_OPENPTY=$HAVE_OPENPTY
-  fi
-  if test $HAVE_OPENPTY = 1; then
-    AC_DEFINE([HAVE_OPENPTY], [1],
-      [Define to 1 if the system has the 'openpty' function.])
+    AC_CHECK_FUNCS([_getpty posix_openpt])
   fi
 ])