diff options
author | Laszlo Csomor <laszlocsomor@google.com> | 2017-11-30 14:12:24 +0100 |
---|---|---|
committer | Laszlo Csomor <laszlocsomor@google.com> | 2017-12-07 15:31:49 +0100 |
commit | 65da9fd97f67a9499771b6294cf017248ece5661 (patch) | |
tree | bde1fb942696ae49d7cc5cee83db1a2140f692fa /src/google/protobuf/stubs/io_win32.h | |
parent | 953a0253fc1bd69ae788bbcb672c4cdfe562b8cd (diff) |
io_win32: support non-ASCII paths
Diffstat (limited to 'src/google/protobuf/stubs/io_win32.h')
-rw-r--r-- | src/google/protobuf/stubs/io_win32.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/google/protobuf/stubs/io_win32.h b/src/google/protobuf/stubs/io_win32.h index 53160089..60d0ceb6 100644 --- a/src/google/protobuf/stubs/io_win32.h +++ b/src/google/protobuf/stubs/io_win32.h @@ -69,8 +69,22 @@ LIBPROTOBUF_EXPORT int read(int fd, void* buffer, size_t size); LIBPROTOBUF_EXPORT int setmode(int fd, int mode); LIBPROTOBUF_EXPORT int stat(const char* path, struct _stat* buffer); LIBPROTOBUF_EXPORT int write(int fd, const void* buffer, size_t size); -LIBPROTOBUF_EXPORT std::wstring testonly_path_to_winpath( - const std::string& path); +LIBPROTOBUF_EXPORT std::wstring testonly_utf8_to_winpath(const char* path); + +namespace strings { + +// Convert from UTF-16 to Active-Code-Page-encoded or to UTF-8-encoded text. +LIBPROTOBUF_EXPORT bool wcs_to_mbs( + const wchar_t* s, std::string* out, bool outUtf8); + +// Convert from Active-Code-Page-encoded or UTF-8-encoded text to UTF-16. +LIBPROTOBUF_EXPORT bool mbs_to_wcs( + const char* s, std::wstring* out, bool inUtf8); + +// Convert from UTF-8-encoded text to UTF-16. +LIBPROTOBUF_EXPORT bool utf8_to_wcs(const char* input, std::wstring* out); + +} // namespace strings } // namespace win32 } // namespace internal |