diff options
author | Erik de Castro Lopo <erikd@mega-nerd.com> | 2013-04-21 17:53:02 +1000 |
---|---|---|
committer | Erik de Castro Lopo <erikd@mega-nerd.com> | 2013-04-21 17:53:07 +1000 |
commit | 52fab8ba7e2a728e884a06fa80f9e0a0d4938e05 (patch) | |
tree | 301ed3e671a9130efad6bbade43f13adb47f3081 /src/share/win_utf8_io/win_utf8_io.c | |
parent | 92db3c951eb9ccd7b327ce7af40e541e72b946ed (diff) | |
download | flac-52fab8ba7e2a728e884a06fa80f9e0a0d4938e05.tar.gz |
Win utf8 treatment for CreateFile.
Patch from Janne Hyvärinen <cse@sci.fi>.
Diffstat (limited to 'src/share/win_utf8_io/win_utf8_io.c')
-rw-r--r-- | src/share/win_utf8_io/win_utf8_io.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/share/win_utf8_io/win_utf8_io.c b/src/share/win_utf8_io/win_utf8_io.c index b32db3c7..d8736e16 100644 --- a/src/share/win_utf8_io/win_utf8_io.c +++ b/src/share/win_utf8_io/win_utf8_io.c @@ -307,3 +307,16 @@ int rename_utf8(const char *oldname, const char *newname) return ret; } + +HANDLE WINAPI CreateFile_utf8(const char *lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) +{ + wchar_t *wname; + HANDLE handle = INVALID_HANDLE_VALUE; + + if ((wname = wchar_from_utf8(lpFileName)) != NULL) { + handle = CreateFileW(wname, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile); + free(wname); + } + + return handle; +} |