[Musicpd-dev-team] UTF-8 file names support for Windows

2013-01-15 Thread Denis Krjuchkov
I've proposed this feature some years ago. Finally got some passion to implement it. Here is the short story: Windows supports Unicode via UTF-16 (wchar_t), MPD handles file names as char* strings. To work around this several wrapper functions has been implemented: u_open(), u_fopen(), u_stat()

Re: [Musicpd-dev-team] UTF-8 file names support for Windows

2013-01-15 Thread Max Kellermann
On 2013/01/15 18:21, Denis Krjuchkov de...@crazydev.net wrote: I've proposed this feature some years ago. Finally got some passion to implement it. Here is the short story: Windows supports Unicode via UTF-16 (wchar_t), MPD handles file names as char* strings. What is really the problem

Re: [Musicpd-dev-team] UTF-8 file names support for Windows

2013-01-15 Thread Max Kellermann
On 2013/01/15 21:13, Denis Krjuchkov de...@crazydev.net wrote: 16.01.2013 2:05, Max Kellermann ??: Is the problem that the native 8 bit charset is not capable of representing all possible wchar_t file names? If that's the case, then I guess we should be using TCHAR. Yes, the

Re: [Musicpd-dev-team] UTF-8 file names support for Windows

2013-01-15 Thread Max Kellermann
On 2013/01/15 21:55, Denis Krjuchkov de...@crazydev.net wrote: 16.01.2013 2:38, Max Kellermann ??: Hm, ok, I think wrapping everything in our own functions is not exactly the most beautiful solution, but will do. (It creates a third character set: UTF-8 for data/protocol strings,

Re: [Musicpd-dev-team] UTF-8 file names support for Windows

2013-01-15 Thread Denis Krjuchkov
16.01.2013 3:02, Max Kellermann пишет: What I would like to have in the long run is some compile-time verification on correct use. This is complicated enough already with just two different string types, and I tried adding _utf8 / _fs suffixes to variable names. Maybe some sort of C++ string