diff options
author | Roland McGrath <roland@redhat.com> | 1996-07-26 00:05:41 +0000 |
---|---|---|
committer | Roland McGrath <roland@redhat.com> | 1996-07-26 00:05:41 +0000 |
commit | 2df6034eb63fb5746db110cad83ef5b1c04d3891 (patch) | |
tree | ab7f98eb7f7e3b1ca9acc4e7ca994a230f9c5dda | |
parent | dd0fe8f1ee791d41354cd946df6673ac2781642a (diff) | |
download | gunmake-2df6034eb63fb5746db110cad83ef5b1c04d3891.tar.gz |
Thu Jul 25 19:53:31 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
From Robert Hoehne <robert.hoehne@Mathematik.TU-Chemnitz.DE>:
* dir.c [__MSDOS__] [DJGPP > 1]: Include <libc/dosio.h> and defin
`__opendir_flags' initialized to 0.
[__MSDOS__] (dosify) [DJGPP > 1]: Return name unchanged if _USE_LFN.
(find_directory) [__MSDOS__ && DJGPP > 1]: If _USE_LGN, set
__opendir_flags to __OPENDIR_PRESERVE_CASE.
-rw-r--r-- | dir.c | 16 |
1 files changed, 16 insertions, 0 deletions
@@ -56,6 +56,10 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #ifdef __MSDOS__ #include <ctype.h> +#if (DJGPP > 1) +#include <libc/dosio.h> +int __opendir_flags = 0; +#endif static char * dosify (filename) @@ -65,6 +69,11 @@ dosify (filename) char *df; int i; +#if (DJGPP > 1) + if (_USE_LFN) + /* Using long file names; do no transformation. */ + return filename; +#endif if (filename == 0) return 0; @@ -372,6 +381,13 @@ find_directory (name) dc->next = directories_contents[hash]; directories_contents[hash] = dc; +#if defined (__MSDOS__) && (DJGPP > 1) + if (_USE_LFN) + /* We are using long filenames, so tell opendir not + to mess with them. */ + __opendir_flags = __OPENDIR_PRESERVE_CASE; +#endif + dc->dirstream = opendir (name); if (dc->dirstream == 0) { |