Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing Unicode support in Win32 implementation. #31

Closed
qis opened this issue Jan 30, 2017 · 4 comments
Closed

Missing Unicode support in Win32 implementation. #31

qis opened this issue Jan 30, 2017 · 4 comments
Assignees
Milestone

Comments

@qis
Copy link

qis commented Jan 30, 2017

Setting UNICODE/_UNICODE breaks the library because it expects e.g. CreateDirectoryA instead of CreateDirectoryW.

@mosra
Copy link
Owner

mosra commented Jan 30, 2017

Yes, I'm aware of this one -- more details in mosra/magnum#98.

Question: do you need Unicode support now? For now I propose to fix this with using the *A functions directly and proper Unicode-aware implementation will appear later, if that would be okay for you.

@mosra mosra self-assigned this Jan 30, 2017
@qis
Copy link
Author

qis commented Jan 31, 2017

I just started looking at it all and this was the first issue to come up. There is no hurry. Personally, I'm happy with std::experimental::filesystem but that would be inconvenient for most others.

@mosra
Copy link
Owner

mosra commented Feb 6, 2017

So in the end I went fully on it. Was quite a lot harder than I originally thought, mainly because MinGW is such a special snowflake. Gah.

  • Full UTF-8 support in Utility::Directory on Windows is done in a1061d0
  • Opening UTF-8 filenames in Utility::Configuration on Windows is done in f2a9f1c
  • Handling of UTF-8 environment variables in Utility::Arguments on Windows is done in 49be6d0
  • Ability to use PluginManager with UTF-8 paths on Windows is done in 2328ba3
  • UTF-8 filenames are passable to corrade_add_resource() since b90f5b4

If you encounter any problems (I hope not, as I tried to increase the test coverage to cover these cases), please report ;)

@mosra mosra closed this as completed Feb 6, 2017
@qis
Copy link
Author

qis commented Feb 6, 2017

@mosra Amazing work, thanks!

@mosra mosra added this to the 2018.02 milestone Feb 15, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants