diff options
author | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-03-20 23:10:05 +0000 |
---|---|---|
committer | usa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-03-20 23:10:05 +0000 |
commit | 98e25a542aec760aed724bd7152ba86a96b3eeb8 (patch) | |
tree | 8ef03a07c7bece68d5625b49d5c23a8dc2fdba37 /win32 | |
parent | a84d087d3cb142ae76b5e257948f6bd70d7873f7 (diff) | |
download | ruby-98e25a542aec760aed724bd7152ba86a96b3eeb8.tar.gz |
* win32/dir.h: replace missing/dir.h .
* win32/win32.h: ditto.
* win32/win32.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'win32')
-rw-r--r-- | win32/dir.h | 20 | ||||
-rw-r--r-- | win32/win32.c | 8 | ||||
-rw-r--r-- | win32/win32.h | 3 |
3 files changed, 25 insertions, 6 deletions
diff --git a/win32/dir.h b/win32/dir.h new file mode 100644 index 0000000000..8aa793de42 --- /dev/null +++ b/win32/dir.h @@ -0,0 +1,20 @@ +struct direct +{ + long d_namlen; + ino_t d_ino; + char d_name[256]; +}; +typedef struct { + char *start; + char *curr; + long size; + long nfiles; + struct direct dirstr; +} DIR; + +DIR* opendir(const char*); +struct direct* readdir(DIR *); +long telldir(DIR *); +void seekdir(DIR *, long); +void rewinddir(DIR *); +void closedir(DIR *); diff --git a/win32/win32.c b/win32/win32.c index da657a540f..d66723a0fc 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -25,11 +25,12 @@ #include <winbase.h> #include <wincon.h> #include "win32.h" -#include "dir.h" +#include "win32/dir.h" #ifndef index #define index(x, y) strchr((x), (y)) #endif #define isdirsep(x) ((x) == '/' || (x) == '\\') +#undef stat #ifndef bool #define bool int @@ -1334,7 +1335,7 @@ NtMakeCmdVector (char *cmdline, char ***vec, int InputCmd) // DIR * -opendir(char *filename) +opendir(const char *filename) { DIR *p; long len; @@ -1344,9 +1345,6 @@ opendir(char *filename) struct stat sbuf; WIN32_FIND_DATA FindData; HANDLE fh; - char root[PATHLEN]; - char volname[PATHLEN]; - DWORD serial, maxname, flags; // // check to see if we\'ve got a directory diff --git a/win32/win32.h b/win32/win32.h index 5df539ecbd..0cd07eebcc 100644 --- a/win32/win32.h +++ b/win32/win32.h @@ -98,6 +98,7 @@ extern "C++" { #include <process.h> #include <time.h> #include <math.h> +#include <sys/stat.h> #include <sys/types.h> #include <sys/utime.h> #include <io.h> @@ -180,7 +181,7 @@ extern "C++" { #define strcasecmp _stricmp #define strncasecmp _strnicmp #undef stat -#define stat win32_stat +#define stat(path,st) win32_stat(path,st) /* these are defined in nt.c */ #ifdef __MINGW32__ |