diff --git a/src/config.c b/src/config.c index 8a8512b64..363622c9c 100644 --- a/src/config.c +++ b/src/config.c @@ -32,7 +32,6 @@ #include #include #include -#include #define HAVE_STDARG_H #include <86box/86box.h> #include "cpu.h" @@ -64,6 +63,7 @@ #include <86box/video.h> #include <86box/plat.h> #include <86box/plat_midi.h> +#include <86box/plat_dir.h> #include <86box/ui.h> diff --git a/src/include/86box/plat_dir.h b/src/include/86box/plat_dir.h index 948db8c84..b8280404c 100644 --- a/src/include/86box/plat_dir.h +++ b/src/include/86box/plat_dir.h @@ -25,7 +25,7 @@ # define MAXDIRLEN 127 -struct direct { +struct dirent { long d_ino; unsigned short d_reclen; unsigned short d_off; @@ -49,7 +49,7 @@ typedef struct { #else char dir[MAXDIRLEN+1]; /* open dir */ #endif - struct direct dent; /* actual directory entry */ + struct dirent dent; /* actual directory entry */ } DIR; @@ -65,7 +65,7 @@ extern DIR *opendirw(const wchar_t *); #else extern DIR *opendir(const char *); #endif -extern struct direct *readdir(DIR *); +extern struct dirent *readdir(DIR *); extern long telldir(DIR *); extern void seekdir(DIR *, long); extern int closedir(DIR *); diff --git a/src/include/tinyglib.h b/src/include/tinyglib.h index 24f9409a3..5f6c6a028 100644 --- a/src/include/tinyglib.h +++ b/src/include/tinyglib.h @@ -259,6 +259,7 @@ g_strv_length(gchar **str_array) #define g_rand_new() calloc(1, sizeof(GRand)) #define g_return_val_if_fail(e, v) if (!(e)) return (v) #define g_shell_parse_argv(a, b, c, d) !!(sizeof(b)) /* unimplemented */ +#define g_strdup(str) ((str) ? strdup(str) : NULL) #define g_warn_if_fail(e) do { if (!(e)) pclog("TinyGLib g_warn_if_fail(" #e ")\n"); } while (0) #define g_warn_if_reached() pclog("TinyGLib g_warn_if_reached()\n") #define g_warning(s, ...) tinyglib_pclog("g_warning", s, ##__VA_ARGS__) @@ -271,7 +272,6 @@ g_strv_length(gchar **str_array) #define g_rand_free free #define g_realloc realloc #define g_snprintf snprintf -#define g_strdup(str) str ? strdup(str) : NULL #define g_strerror strerror #define g_strfreev free #define g_string_append_printf sprintf /* unimplemented */ diff --git a/src/win/CMakeLists.txt b/src/win/CMakeLists.txt index 1377abda7..3fcf28d1a 100644 --- a/src/win/CMakeLists.txt +++ b/src/win/CMakeLists.txt @@ -28,6 +28,8 @@ if(MSVC) # file when using MSVC, so we might just as well do that! target_compile_definitions(ui PRIVATE NO_INCLUDE_MANIFEST) target_sources(86Box PRIVATE 86Box.manifest) + + target_sources(plat PRIVATE win_opendir.c) endif() if(DINPUT) diff --git a/src/win/win_opendir.c b/src/win/win_opendir.c index 1740140cc..d7755e372 100644 --- a/src/win/win_opendir.c +++ b/src/win/win_opendir.c @@ -124,7 +124,7 @@ closedir(DIR *p) * standard "." and ".." entries. Many applications do assume * this anyway, so we simply fake these entries. */ -struct direct * +struct dirent * readdir(DIR *p) { FINDATA *ffp;