diff --git a/lib/glob.c b/lib/glob.c index 24aec87..5139a90 100644 --- a/lib/glob.c +++ b/lib/glob.c @@ -43,7 +43,9 @@ # define POSIX #endif -#include +#ifndef WIN32 +# include +#endif #include #ifndef __set_errno @@ -81,7 +83,7 @@ /* If the system has the `struct dirent64' type we use it internally. */ #if defined _LIBC && !defined COMPILE_GLOB64 -# if (defined POSIX || defined WINDOWS32) && !defined __GNU_LIBRARY__ +# if (defined POSIX || defined WIN32) && !defined __GNU_LIBRARY__ # define CONVERT_D_INO(d64, d32) # else # define CONVERT_D_INO(d64, d32) \ @@ -102,7 +104,7 @@ #endif -#if (defined POSIX || defined WINDOWS32) && !defined __GNU_LIBRARY__ +#if (defined POSIX || defined WIN32) && !defined __GNU_LIBRARY__ /* Posix does not require that the d_ino field be present, and some systems do not provide it. */ # define REAL_DIR_ENTRY(dp) 1 @@ -423,14 +425,14 @@ glob (pattern, flags, errfunc, pglob) /* Find the filename. */ filename = strrchr (pattern, '/'); -#if defined __MSDOS__ || defined WINDOWS32 +#if defined __MSDOS__ || defined WIN32 /* The case of "d:pattern". Since `:' is not allowed in file names, we can safely assume that wherever it happens in pattern, it signals the filename part. This is so we could some day support patterns like "[a-z]:foo". */ if (filename == NULL) filename = strchr (pattern, ':'); -#endif /* __MSDOS__ || WINDOWS32 */ +#endif /* __MSDOS__ || WIN32 */ dirname_modified = 0; if (filename == NULL) { @@ -470,7 +472,7 @@ glob (pattern, flags, errfunc, pglob) { char *newp; dirlen = filename - pattern; -#if defined __MSDOS__ || defined WINDOWS32 +#if defined __MSDOS__ || defined WIN32 if (*filename == ':' || (filename > pattern + 1 && filename[-1] == ':')) { @@ -494,7 +496,7 @@ glob (pattern, flags, errfunc, pglob) ++filename; if (filename[0] == '\0' -#if defined __MSDOS__ || defined WINDOWS32 +#if defined __MSDOS__ || defined WIN32 && dirname[dirlen - 1] != ':' && (dirlen < 3 || dirname[dirlen - 2] != ':' || dirname[dirlen - 1] != '/') @@ -564,7 +566,7 @@ glob (pattern, flags, errfunc, pglob) if (home_dir == NULL || home_dir[0] == '\0') home_dir = "SYS:"; # else -# ifdef WINDOWS32 +# ifdef WIN32 if (home_dir == NULL || home_dir[0] == '\0') home_dir = "c:/users/default"; /* poor default */ # else @@ -629,7 +631,7 @@ glob (pattern, flags, errfunc, pglob) else home_dir = "~"; /* No luck. */ } -# endif /* WINDOWS32 */ +# endif /* WIN32 */ # endif /* Now construct the full directory. */ if (dirname[1] == '\0') @@ -649,7 +651,7 @@ glob (pattern, flags, errfunc, pglob) } dirname_modified = 1; } -# if !defined _AMIGA && !defined WINDOWS32 +# if !defined _AMIGA && !defined WIN32 else { char *end_name = strchr (dirname, '/'); @@ -765,7 +767,7 @@ glob (pattern, flags, errfunc, pglob) home directory. */ return GLOB_NOMATCH; } -# endif /* Not Amiga && not WINDOWS32. */ +# endif /* Not Amiga && not WIN32. */ } /* Now test whether we looked for "~" or "~NAME". In this case we @@ -1113,7 +1115,7 @@ prefix_array (const char *dirname, char **array, size_t n) { register size_t i; size_t dirlen = strlen (dirname); -#if defined __MSDOS__ || defined WINDOWS32 +#if defined __MSDOS__ || defined WIN32 int sep_char = '/'; # define DIRSEP_CHAR sep_char #else @@ -1124,7 +1126,7 @@ prefix_array (const char *dirname, char **array, size_t n) /* DIRNAME is just "/", so normal prepending would get us "//foo". We want "/foo" instead, so don't prepend any chars from DIRNAME. */ dirlen = 0; -#if defined __MSDOS__ || defined WINDOWS32 +#if defined __MSDOS__ || defined WIN32 else if (dirlen > 1) { if (dirname[dirlen - 1] == '/' && dirname[dirlen - 2] == ':')