diff --git a/toml/parser.hpp b/toml/parser.hpp index deeab7c..2339d9b 100644 --- a/toml/parser.hpp +++ b/toml/parser.hpp @@ -1074,7 +1074,13 @@ toml::Table parse(std::basic_istream& is) std::vector contents(size); is.read(contents.data(), size); is.imbue(curloc); - return parse_data::invoke(contents.cbegin(), contents.cend()); + + std::wstring wstr(size, ' '); + std::copy(contents.cbegin(), contents.cend(), wstr.begin()); + std::wstring_convert, wchar_t> cvter; + std::string u8str = converter.to_bytes(wstr); + + return parse_data::invoke(u8str.cbegin(), u8str.cend()); } toml::Table parse(const std::string& filename)