diff options
author | Ulrich Drepper <drepper@redhat.com> | 1999-11-01 03:04:49 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1999-11-01 03:04:49 +0000 |
commit | ea1bfb072cb7480fb47c1b7b72f08eb1ec1171ee (patch) | |
tree | 32ebae4b7569f5a847293e684012859a3b9299b5 | |
parent | 56bd58554f695b46acb80e11f8253198ab33c718 (diff) | |
download | glibc-ea1bfb072cb7480fb47c1b7b72f08eb1ec1171ee.tar.gz glibc-ea1bfb072cb7480fb47c1b7b72f08eb1ec1171ee.tar.xz glibc-ea1bfb072cb7480fb47c1b7b72f08eb1ec1171ee.zip |
Update.
1999-09-11 Paul Eggert <eggert@twinsun.com> * posix/glob.h (glob): If #defining to glob64, do this before declaring it, so that all declarations and uses match, and do not declare glob64, to avoid a declaration clash. (globfree): Likewise with globfree64. 1999-09-08 Eli Zaretskii <eliz@is.elta.co.il> * sysdeps/generic/glob.c (prefix_array) [__MSDOS__,WINDOWS32]: Keep the trailing slash unless DIRNAME is just "x:/".
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | posix/glob.h | 12 | ||||
-rw-r--r-- | sysdeps/generic/glob.c | 2 |
3 files changed, 19 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog index d2a51436e1..32b645b54e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +1999-09-11 Paul Eggert <eggert@twinsun.com> + + * posix/glob.h (glob): If #defining to glob64, do this before + declaring it, so that all declarations and uses match, and do not + declare glob64, to avoid a declaration clash. + (globfree): Likewise with globfree64. + +1999-09-08 Eli Zaretskii <eliz@is.elta.co.il> + + * sysdeps/generic/glob.c (prefix_array) [__MSDOS__,WINDOWS32]: + Keep the trailing slash unless DIRNAME is just "x:/". + 1999-10-11 Andreas Jaeger <aj@suse.de> * sysdeps/unix/sysv/linux/bits/siginfo.h (SI_KERNEL): Added. diff --git a/posix/glob.h b/posix/glob.h index 6a3ab1817f..d92026f794 100644 --- a/posix/glob.h +++ b/posix/glob.h @@ -140,6 +140,11 @@ typedef struct } glob64_t; #endif +#if _FILE_OFFSET_BITS == 64 && __GNUC__ < 2 +# define glob glob64 +# define globfree globfree64 +#endif + /* Do glob searching for PATTERN, placing results in PGLOB. The bits defined above may be set in FLAGS. If a directory cannot be opened or read and ERRFUNC is not nil, @@ -148,7 +153,7 @@ typedef struct `glob' returns GLOB_ABEND; if it returns zero, the error is ignored. If memory cannot be allocated for PGLOB, GLOB_NOSPACE is returned. Otherwise, `glob' returns zero. */ -#if _FILE_OFFSET_BITS != 64 +#if _FILE_OFFSET_BITS != 64 || __GNUC__ < 2 extern int glob __P ((__const char *__pattern, int __flags, int (*__errfunc) (__const char *, int), glob_t *__pglob)); @@ -156,16 +161,11 @@ extern int glob __P ((__const char *__pattern, int __flags, /* Free storage allocated in PGLOB by a previous `glob' call. */ extern void globfree __P ((glob_t *__pglob)); #else -# if __GNUC__ >= 2 extern int glob __P ((__const char *__pattern, int __flags, int (*__errfunc) (__const char *, int), glob_t *__pglob)) __asm__ ("glob64"); extern void globfree __P ((glob_t *__pglob)) __asm__ ("globfree64"); -# else -# define glob glob64 -# define globfree globfree64 -# endif #endif #ifdef _LARGEFILE64_SOURCE diff --git a/sysdeps/generic/glob.c b/sysdeps/generic/glob.c index 1ab5d8b629..65055fb7f8 100644 --- a/sysdeps/generic/glob.c +++ b/sysdeps/generic/glob.c @@ -1105,7 +1105,7 @@ prefix_array (dirname, array, n) #if defined __MSDOS__ || defined WINDOWS32 else if (dirlen > 1) { - if (dirname[dirlen - 1] == '/') + if (dirname[dirlen - 1] == '/' && dirname[dirlen - 2] == ':') /* DIRNAME is "d:/". Don't prepend the slash from DIRNAME. */ --dirlen; else if (dirname[dirlen - 1] == ':') |