diff --git a/toml/parser.hpp b/toml/parser.hpp index 589add9..586a0fd 100644 --- a/toml/parser.hpp +++ b/toml/parser.hpp @@ -2065,10 +2065,11 @@ parse(std::istream& is, const std::string& fname = "unknown file") std::vector letters(static_cast(fsize)); is.read(letters.data(), fsize); - if(!letters.empty() && letters.back() == '\0') + while(!letters.empty() && letters.back() == '\0') { letters.pop_back(); } + assert(letters.empty() || letters.back() != '\0'); detail::location> loc(std::move(fname), std::move(letters));