about summary refs log tree commit diff
path: root/posix/bug-glob3.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2010-03-24 12:10:51 -0700
committerUlrich Drepper <drepper@redhat.com>2010-03-24 12:10:51 -0700
commitc27849fbbf94f240704ac648f6b57daec08f0533 (patch)
tree739a7f3f6f6453e4aee5ddf71ab06b713d7344e9 /posix/bug-glob3.c
parent8f2e39941309c1a590e71b9a8035dbbc7e587fae (diff)
downloadglibc-c27849fbbf94f240704ac648f6b57daec08f0533.tar.gz
glibc-c27849fbbf94f240704ac648f6b57daec08f0533.tar.xz
glibc-c27849fbbf94f240704ac648f6b57daec08f0533.zip
Add test for last glob bug.
Diffstat (limited to 'posix/bug-glob3.c')
-rw-r--r--posix/bug-glob3.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/posix/bug-glob3.c b/posix/bug-glob3.c
new file mode 100644
index 0000000000..f2fbd703dd
--- /dev/null
+++ b/posix/bug-glob3.c
@@ -0,0 +1,45 @@
+#include <glob.h>
+#include <stdio.h>
+#include <string.h>
+
+static int
+do_test (void)
+{
+  int result = 0;
+  glob_t g;
+  g.gl_pathc = 0;
+
+  int r = glob ("", 0, NULL, &g);
+  if (r != GLOB_NOMATCH)
+    {
+      puts ("glob (\"\", 0, NULL, &g) did not fail");
+      result = 1;
+    }
+  else if (g.gl_pathc != 0)
+    {
+      puts ("gl_pathc after glob (\"\", 0, NULL, &g) not zero");
+      result = 1;
+    }
+
+  r = glob ("", GLOB_NOCHECK, NULL, &g);
+  if (r != 0)
+    {
+      puts ("glob (\"\", GLOB_NOCHECK, NULL, &g) did fail");
+      result = 1;
+    }
+  else if (g.gl_pathc != 1)
+    {
+      puts ("gl_pathc after glob (\"\", GLOB_NOCHECK, NULL, &g) not 1");
+      result = 1;
+    }
+  else if (strcmp (g.gl_pathv[0], "") != 0)
+    {
+      puts ("gl_pathv[0] after glob (\"\", GLOB_NOCHECK, NULL, &g) not \"\"");
+      result = 1;
+    }
+
+  return result;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"