non-ASCII filepaths in a C function
Henning Thielemann
lemming at henning-thielemann.de
Fri Jul 24 21:52:35 UTC 2015
In my 'soxlib' package I have written a binding to
sox_format_t * sox_open_read(
char const * path,
sox_signalinfo_t const * signal,
sox_encodinginfo_t const * encoding,
char const * filetype);
I construct the C filepath "path" from a Haskell FilePath using
Foreign.C.String.withCString. This works for ASCII and non-ASCII
characters in Linux. However, non-ASCII characters let sox_open_read fail
on Windows. What is the correct way to convert FilePath to "char *"?
More information about the FFI
mailing list