diff options
author | Alexander Kuznetsov <kuzsasha@gmail.com> | 2012-03-20 06:17:37 +0400 |
---|---|---|
committer | Alexander Kuznetsov <kuzsasha@gmail.com> | 2012-03-20 06:17:37 +0400 |
commit | f11a6d3a847e8e18faefd8694373d2f11b5ec802 (patch) | |
tree | b4bec6dcfd28e3da4fa1e84ee4bd20fa0a21be39 /source/blender/blenlib/intern/dynlib.c | |
parent | deea1f38b1ec0ccba283abeb63506cbc15e093d5 (diff) |
Adds support for utf paths on Windows.
Not all file formats/calls are supported yet. It will be expended.
Please from now on use BLI_fopen, BLI_* for file manipulations.
For non-windows systems BLI_fopen just calls fopen.
For Windows, the utf-8 string is translated to utf-16 string in order to call UTF version of the function.
Diffstat (limited to 'source/blender/blenlib/intern/dynlib.c')
-rw-r--r-- | source/blender/blenlib/intern/dynlib.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/blenlib/intern/dynlib.c b/source/blender/blenlib/intern/dynlib.c index 0bfa5e79eb8..c23feb975df 100644 --- a/source/blender/blenlib/intern/dynlib.c +++ b/source/blender/blenlib/intern/dynlib.c @@ -44,11 +44,17 @@ struct DynamicLibrary { #ifdef WIN32 #include <windows.h> +#include "utf_winfunc.h" +#include "utfconv.h" DynamicLibrary *BLI_dynlib_open(char *name) { DynamicLibrary *lib; - void *handle= LoadLibrary(name); + void *handle; + + UTF16_ENCODE(name); + handle= LoadLibraryW(name_16); + UTF16_UN_ENCODE(name); if(!handle) return NULL; |