time_zone_content_manager: Fix out of bounds read

There were cases where raw_data didn't contain enough
space to hold the zero terminator.

This was caught with -fsanitize=address.
This commit is contained in:
ReinUsesLisp 2020-03-18 19:05:23 -03:00
parent 56ea0f8acb
commit ac7ee21331

View File

@ -53,7 +53,7 @@ static std::vector<std::string> BuildLocationNameCache(Core::System& system) {
return {};
}
std::vector<char> raw_data(binary_list->GetSize());
std::vector<char> raw_data(binary_list->GetSize() + 1);
binary_list->ReadBytes<char>(raw_data.data(), binary_list->GetSize());
std::stringstream data_stream{raw_data.data()};