diff --git a/src/fileio_func.h b/src/fileio_func.h index 6dea50e9ca..25d961bc0c 100644 --- a/src/fileio_func.h +++ b/src/fileio_func.h @@ -116,7 +116,6 @@ DECLARE_ENUM_AS_BIT_SET(TarScanner::Mode) /* Implementation of opendir/readdir/closedir for Windows */ #if defined(WIN32) -#include struct DIR; struct dirent { // XXX - only d_name implemented @@ -127,19 +126,6 @@ struct dirent { // XXX - only d_name implemented DIR *dir; }; -struct DIR { - HANDLE hFind; - /* the dirent returned by readdir. - * note: having only one global instance is not possible because - * multiple independent opendir/readdir sequences must be supported. */ - dirent ent; - WIN32_FIND_DATA fd; - /* since opendir calls FindFirstFile, we need a means of telling the - * first call to readdir that we already have a file. - * that's the case iff this is true */ - bool at_first_entry; -}; - DIR *opendir(const TCHAR *path); struct dirent *readdir(DIR *d); int closedir(DIR *d); diff --git a/src/ini.cpp b/src/ini.cpp index fe49f5fe7e..e82daaceb0 100644 --- a/src/ini.cpp +++ b/src/ini.cpp @@ -21,6 +21,7 @@ #endif #ifdef WIN32 +# include # include # include "core/mem_func.hpp" #endif diff --git a/src/os/windows/win32.cpp b/src/os/windows/win32.cpp index 07227222a6..dc38a69b35 100644 --- a/src/os/windows/win32.cpp +++ b/src/os/windows/win32.cpp @@ -89,6 +89,19 @@ void OSOpenBrowser(const char *url) * modified from Jan Wassenberg's GPL implementation posted over at * http://www.gamedev.net/community/forums/topic.asp?topic_id=364584&whichpage=1� */ +struct DIR { + HANDLE hFind; + /* the dirent returned by readdir. + * note: having only one global instance is not possible because + * multiple independent opendir/readdir sequences must be supported. */ + dirent ent; + WIN32_FIND_DATA fd; + /* since opendir calls FindFirstFile, we need a means of telling the + * first call to readdir that we already have a file. + * that's the case iff this is true */ + bool at_first_entry; +}; + /* suballocator - satisfies most requests with a reusable static instance. * this avoids hundreds of alloc/free which would fragment the heap. * To guarantee concurrency, we fall back to malloc if the instance is