lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Wed, Jul 22, 2009 at 11:44 AM, David Given <dg@cowlark.com> wrote:
Bulat Ziganshin wrote:
[...]

just adding encoding/decoding layer is probably impossible since
open/popen/... on windows uses OEM/ANSI encoding by default, and
encoding from utf-8 to oem/ansi is lossy

It's worse than you think. On Windows, the ANSI file system APIs have a much shorter maximum path length than the UTF-16 ones! Read this:

http://subversion.tigris.org/faq.html#long-paths

So a naive mapping of the Lua functions to the corresponding Windows ones is not necessarily going to work --- it's entirely possible to be in a situation where just calling getcwd() fails.

Ditching the ANSI APIs completely and using the UTF-16 ones entirely is probably the best way to go, unfortunately...
Yeah, that's what I'd figured I had to do.

Basically replace all ANSI APIs with the UTF-16 ones, and have an automatic conversion from UTF-8 => UTF-16  [and back when pulling data out]


--
Thomas Harning Jr.