@@ -11,6 +11,8 @@
12#if defined(WIN32) || defined(__WIN32) || defined(__WIN32__)
12#if defined(WIN32) || defined(__WIN32) || defined(__WIN32__)
13int win_fpoll(void* h);
13int win_fpoll(void* h);
14+FILE *win32_u8fopen(const char *path, const char *mode);
15+FILE *win32_u8popen(const char *path, const char *mode);
15#include <sys/select.h>
17#include <sys/select.h>
@@ -21,9 +23,13 @@ void putStr(char* str) {
21 printf("%s", str);
23 printf("%s", str);
24−void* fileOpen(char* name, char* mode) {
26+void *fileOpen(char *name, char *mode) {
27+#if defined(WIN32) || defined(__WIN32) || defined(__WIN32__)
28+ FILE *f = win32_u8fopen(name, mode);
25− FILE* f = fopen(name, mode);
30+ FILE *f = fopen(name, mode);
26− return (void*)f;
32+ return (void *)f;
29void fileClose(void* h) {
35void fileClose(void* h) {
@@ -82,10 +88,14 @@ int fpoll(void* h)
85−void* do_popen(const char* cmd, const char* mode) {
91+void *do_popen(const char *cmd, const char *mode) {
92+#if defined(WIN32) || defined(__WIN32) || defined(__WIN32__)
93+ FILE *f = win32_u8popen(cmd, mode);
86− FILE* f = popen(cmd, mode);
95+ FILE *f = popen(cmd, mode);
87−// int d = fileno(f);
96+ // int d = fileno(f);
88−// fcntl(d, F_SETFL, O_NONBLOCK);
97+ // fcntl(d, F_SETFL, O_NONBLOCK);