X-Git-Url: https://git.videolan.org/gitweb.cgi/vlc.git/?p=vlc.git;p=vlc.git;a=blobdiff_plain;f=src%2Ftext%2Ffilesystem.c;h=6bec646b46bc891f03a9d0614706843b0e80764a;hp=cb3dc3d261a2011eddb90f08d16330a2898d06f8;hb=aee0317592c43b4fa6d9d84bc2e70968e4b93f5f;hpb=71f36d43987ea4b86fb71c8b785ea93c18924ce0 diff --git a/src/text/filesystem.c b/src/text/filesystem.c index cb3dc3d261..6bec646b46 100644 --- a/src/text/filesystem.c +++ b/src/text/filesystem.c @@ -85,11 +85,20 @@ static int convert_path (const char *restrict path, wchar_t *restrict wpath) * * @param filename file path to open (with UTF-8 encoding) * @param flags open() flags, see the C library open() documentation - * @param mode file permissions if creating a new file * @return a file handle on success, -1 on error (see errno). + * @note Contrary to standard open(), this function returns file handles + * with the close-on-exec flag enabled. */ -int utf8_open (const char *filename, int flags, mode_t mode) +int utf8_open (const char *filename, int flags, ...) { + mode_t mode = 0; + va_list ap; + + va_start (ap, flags); + if (flags & O_CREAT) + mode = va_arg (ap, mode_t); + va_end (ap); + #ifdef UNDER_CE /*_open translates to wchar internally on WinCE*/ return _open (filename, flags, mode);