about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2015-09-04 14:37:56 -0700
committerRoland McGrath <roland@hack.frob.com>2015-09-04 14:37:56 -0700
commitbd9e69abb887d78d0d6708fc089cc9f3eabf106d (patch)
tree70af9c41f9bc8959f688efb08f66ec7668f2dba4
parent522e02ab8a7484881ca8290c6cd245d33867d5d4 (diff)
downloadglibc-bd9e69abb887d78d0d6708fc089cc9f3eabf106d.tar.gz
glibc-bd9e69abb887d78d0d6708fc089cc9f3eabf106d.tar.xz
glibc-bd9e69abb887d78d0d6708fc089cc9f3eabf106d.zip
BZ#18921: Fix opendir inverted o_directory_works test.
-rw-r--r--ChangeLog8
-rw-r--r--sysdeps/posix/opendir.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 1db8e3197d..53b6c24549 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2015-09-04  Roland McGrath  <roland@hack.frob.com>
+
+	[BZ #18921]
+	* sysdeps/posix/opendir.c (need_isdir_precheck) [O_DIRECTORY]:
+	Fix inverted sense of test of 'o_directory_works' value.
+	Reported by Pádraig Brady <P@draigBrady.com>, diagnosed by
+	Bernhard Voelker <mail@bernhard-voelker.de>.
+
 2015-09-04  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #14912]
diff --git a/sysdeps/posix/opendir.c b/sysdeps/posix/opendir.c
index 6509f5c05c..9edf056fb3 100644
--- a/sysdeps/posix/opendir.c
+++ b/sysdeps/posix/opendir.c
@@ -105,7 +105,7 @@ need_isdir_precheck (void)
     tryopen_o_directory ();
 
   /* We can skip the expensive `stat' call if O_DIRECTORY works.  */
-  return o_directory_works > 0;
+  return o_directory_works < 0;
 #endif
   return true;
 }