Răsfoiți Sursa

Fix container overflow in MMD parser

Using reserve, buffer size is not updated. Since data is directly inserted and not using push_pack,
this can lead to a container overflow.
Alexandre Avenel 1 an în urmă
părinte
comite
aae93691b9
1 a modificat fișierele cu 1 adăugiri și 1 ștergeri
  1. 1 1
      code/AssetLib/MMD/MMDPmxParser.cpp

+ 1 - 1
code/AssetLib/MMD/MMDPmxParser.cpp

@@ -93,7 +93,7 @@ namespace pmx
 		{
 			return std::string();
 		}
-		buffer.reserve(size);
+		buffer.resize(size);
 		stream->read((char*) buffer.data(), size);
 		if (encoding == 0)
 		{