diff --git a/apps/codecs.c b/apps/codecs.c index 4d97baacbe..46d9223560 100644 --- a/apps/codecs.c +++ b/apps/codecs.c @@ -83,7 +83,7 @@ static int open(const char* pathname, int flags, ...) { va_list ap; va_start(ap, flags); - fd = sim_open(pathname, flags, va_arg(ap, mode_t)); + fd = sim_open(pathname, flags, va_arg(ap, unsigned int)); va_end(ap); } else diff --git a/apps/plugin.c b/apps/plugin.c index 8a32a159b4..e4480deed1 100644 --- a/apps/plugin.c +++ b/apps/plugin.c @@ -987,8 +987,7 @@ static int open_wrapper(const char* pathname, int flags, ...) { va_list ap; va_start(ap, flags); - int fd; - fd = sim_open(pathname, flags, va_arg(ap, mode_t)); + fd = sim_open(pathname, flags, va_arg(ap, unsigned int)); va_end(ap); } else diff --git a/apps/plugins/doom/rockdoom.c b/apps/plugins/doom/rockdoom.c index 1383a2b520..26afdd93db 100644 --- a/apps/plugins/doom/rockdoom.c +++ b/apps/plugins/doom/rockdoom.c @@ -72,7 +72,7 @@ int my_open(const char *file, int flags, ...) { va_list ap; va_start(ap, flags); - filearray[fpoint]=rb->open(file, flags, va_arg(ap, mode_t)); + filearray[fpoint]=rb->open(file, flags, va_arg(ap, unsigned int)); va_end(ap); } else diff --git a/uisimulator/common/io.c b/uisimulator/common/io.c index 937c710e06..cddb19c9a8 100644 --- a/uisimulator/common/io.c +++ b/uisimulator/common/io.c @@ -340,11 +340,12 @@ int sim_open(const char *name, int o, ...) if (num_openfiles >= MAX_OPEN_FILES) return -2; - if (o & O_CREAT) + if (opts & O_CREAT) { va_list ap; va_start(ap, o); - ret = OPEN(get_sim_pathname(name), opts, va_arg(ap, mode_t)); + mode_t mode = va_arg(ap, unsigned int); + ret = OPEN(get_sim_pathname(name), opts, mode); va_end(ap); } else