On 20/11/15 02:16, [email protected] wrote: >> Also use CreateFileW to open files so that one can use exotic characters in >> paths. The library interface is not modified, but the code makes an >> assumption >> that paths passed to lmdb functions are encoded as UTF-8. The UTF-8 encoded >> paths are encoded to UTF-16 which is then passed to CreateFileW. > > This patch is now in git mdb.master.
Needs cleanup: utf8_to_utf16() ignores errors in malloc/MultiByteToWideChar(). utf8_to_utf16()'s callers ignore error returns. utf8_to_utf16() can return EILSEQ, an errno code not listed in mdb_strerror(). It should return a Windows error code or a new MDB_<SOMETHING> code. (LMDB returns LDMB codes or system error codes. The latter are errno codes on Unix and Windows codes on Windows - except mdb_strerror's hardcoded errno codes which we plan to get rid of.)
