Regenerate META.yml
[p5sagit/p5-mst-13.2.git] / win32 / perlglob.c
1 /*
2  * Globbing for NT.  Relies on the expansion done by the library
3  * startup code. 
4  */
5
6 #include <stdio.h>
7 #include <io.h>
8 #include <fcntl.h>
9 #include <string.h>
10 #include <windows.h>
11
12 int
13 main(int argc, char *argv[])
14 {
15     int i;
16     size_t len;
17     char root[MAX_PATH];
18     char *dummy;
19     char volname[MAX_PATH];
20     DWORD serial, maxname, flags;
21     BOOL downcase = TRUE;
22
23     /* check out the file system characteristics */
24     if (GetFullPathName(".", MAX_PATH, root, &dummy)) {
25         dummy = strchr(root,'\\'); 
26         if (dummy)
27             *++dummy = '\0';
28         if (GetVolumeInformation(root, volname, MAX_PATH, 
29                                  &serial, &maxname, &flags, 0, 0)) {
30             downcase = !(flags & FS_CASE_IS_PRESERVED);
31         }
32     }
33
34     setmode(fileno(stdout), O_BINARY);
35     for (i = 1; i < argc; i++) {
36         len = strlen(argv[i]);
37         if (downcase)
38             strlwr(argv[i]);
39         if (i > 1) fwrite("\0", sizeof(char), 1, stdout);
40         fwrite(argv[i], sizeof(char), len, stdout);
41     }
42     return 0;
43 }
44