diff --git a/libretro-common/file/retro_file.c b/libretro-common/file/retro_file.c index 915eb659df..c2c219440b 100644 --- a/libretro-common/file/retro_file.c +++ b/libretro-common/file/retro_file.c @@ -163,7 +163,12 @@ RFILE *retro_fopen(const char *path, unsigned mode, ssize_t len) mode_str = "wb"; #endif else - flags = O_WRONLY | O_CREAT | O_TRUNC | S_IRUSR | S_IWUSR; + { + flags = O_WRONLY | O_CREAT | O_TRUNC; +#ifndef _WIN32 + flags |= S_IRUSR | S_IWUSR; +#endif + } #endif break; case RFILE_MODE_READ_WRITE: @@ -406,8 +411,8 @@ ssize_t retro_fwrite(RFILE *stream, const void *s, size_t len) if (stream->hints & RFILE_HINT_MMAP) return -1; else - return write(stream->fd, s, len); #endif + return write(stream->fd, s, len); #endif }