X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fd-ino.m4;h=03087bf5e758230557fc650779b1f035eee39342;hb=f61c11e448791a8977beeb8dcd52bfee225e3ca0;hp=e4ea6ea33cf289323c34ad89c2611064da482e5d;hpb=441aa3044f43e5572f58c354f01e6bc070acd5c7;p=gnulib.git diff --git a/m4/d-ino.m4 b/m4/d-ino.m4 index e4ea6ea33..03087bf5e 100644 --- a/m4/d-ino.m4 +++ b/m4/d-ino.m4 @@ -1,11 +1,11 @@ -# serial 11 +# serial 12 dnl From Jim Meyering. dnl dnl Check whether struct dirent has a member named d_ino. dnl -# Copyright (C) 1997, 1999-2001, 2003-2004, 2006-2007, 2009 Free Software +# Copyright (C) 1997, 1999-2001, 2003-2004, 2006-2007, 2009-2012 Free Software # Foundation, Inc. # This file is free software; the Free Software Foundation @@ -27,12 +27,17 @@ AC_DEFUN([gl_CHECK_TYPE_STRUCT_DIRENT_D_INO], if (! dp) return 1; e = readdir (dp); - return ! (e - && stat (e->d_name, &st) == 0 - && e->d_ino == st.st_ino);]])], - [gl_cv_struct_dirent_d_ino=yes], - [gl_cv_struct_dirent_d_ino=no], - [gl_cv_struct_dirent_d_ino=no])]) + if (! e) + return 2; + if (stat (e->d_name, &st) != 0) + return 3; + if (e->d_ino != st.st_ino) + return 4; + return 0; + ]])], + [gl_cv_struct_dirent_d_ino=yes], + [gl_cv_struct_dirent_d_ino=no], + [gl_cv_struct_dirent_d_ino=no])]) if test $gl_cv_struct_dirent_d_ino = yes; then AC_DEFINE([D_INO_IN_DIRENT], [1], [Define if struct dirent has a member d_ino that actually works.])