aboutsummaryrefslogtreecommitdiff
path: root/io/bug-ftw5.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-02-21 09:36:46 +0000
committerUlrich Drepper <drepper@redhat.com>2007-02-21 09:36:46 +0000
commit63a2f30529aca7a97f84a7f2a6f8afc40f0a3cdb (patch)
tree0c7a8b02e3f4963fd1408cecd3b506749c2489d9 /io/bug-ftw5.c
parentc8703f884991059dcaea8a78a4ae00ff7b1118eb (diff)
downloadglibc-63a2f30529aca7a97f84a7f2a6f8afc40f0a3cdb.tar
glibc-63a2f30529aca7a97f84a7f2a6f8afc40f0a3cdb.tar.gz
glibc-63a2f30529aca7a97f84a7f2a6f8afc40f0a3cdb.tar.bz2
glibc-63a2f30529aca7a97f84a7f2a6f8afc40f0a3cdb.zip
* io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /. (open_dir_stream): Likewise. * io/Makefile (tests): Add bug-ftw5. io/bug-ftw5.c: New file.
Diffstat (limited to 'io/bug-ftw5.c')
-rw-r--r--io/bug-ftw5.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/io/bug-ftw5.c b/io/bug-ftw5.c
new file mode 100644
index 0000000000..c1cd81d30e
--- /dev/null
+++ b/io/bug-ftw5.c
@@ -0,0 +1,25 @@
+#include <errno.h>
+#include <ftw.h>
+#include <stdio.h>
+
+static int
+fn (const char *file, const struct stat *sb, int flag, struct FTW *s)
+{
+ puts (file);
+ return FTW_STOP;
+}
+
+static int
+do_test (void)
+{
+ if (nftw ("/", fn, 0, FTW_CHDIR | FTW_ACTIONRETVAL) < 0)
+ {
+ printf ("nftw / FTW_CHDIR: %m\n");
+ return 1;
+ }
+
+ return 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"