commit 2cc8be3edd3d88ead31b1132d8c5a9eee9283f72 Author: Daniel Swanson Date: Thu Jun 17 10:11:40 2021 -0500 make to_ustring() use unsigned chars diff --git a/lttoolbox/ustring.cc b/lttoolbox/ustring.cc index e8d4777..87056c2 100644 --- a/lttoolbox/ustring.cc +++ b/lttoolbox/ustring.cc @@ -34,7 +34,13 @@ write(const UString& str, UFILE* output) UString to_ustring(const char* s) { - auto sz = strlen(s); + return to_ustring(reinterpret_cast(s)); +} + +UString +to_ustring(const uint8_t* s) +{ + auto sz = strlen(reinterpret_cast(s)); UString ret; ret.reserve(sz); utf8::utf8to16(s, s+sz, std::back_inserter(ret)); diff --git a/lttoolbox/ustring.h b/lttoolbox/ustring.h index 548fc51..7068e28 100644 --- a/lttoolbox/ustring.h +++ b/lttoolbox/ustring.h @@ -28,8 +28,8 @@ typedef std::basic_string UString; void write(const UString& str, UFILE* output); -// for command-line arguments UString to_ustring(const char* str); +UString to_ustring(const uint8_t* str); // append UTF-16 string to UTF-32 vector of symbols void ustring_to_vec32(const UString& str, std::vector& vec);