unit_tests: fix use after free in serialization test

This commit is contained in:
moneromooo-monero 2021-09-08 01:03:34 +00:00
parent 8fde011dbe
commit 5eaedb51b9
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3

View File

@ -132,7 +132,8 @@ TEST(Serialization, BinaryArchiveInts) {
ASSERT_EQ(8, oss.str().size()); ASSERT_EQ(8, oss.str().size());
ASSERT_EQ(string("\0\0\0\0\xff\0\0\0", 8), oss.str()); ASSERT_EQ(string("\0\0\0\0\xff\0\0\0", 8), oss.str());
binary_archive<false> iar{epee::strspan<std::uint8_t>(oss.str())}; const std::string s = oss.str();
binary_archive<false> iar{epee::strspan<std::uint8_t>(s)};
iar.serialize_int(x1); iar.serialize_int(x1);
ASSERT_EQ(8, iar.getpos()); ASSERT_EQ(8, iar.getpos());
ASSERT_TRUE(iar.good()); ASSERT_TRUE(iar.good());
@ -150,7 +151,8 @@ TEST(Serialization, BinaryArchiveVarInts) {
ASSERT_EQ(6, oss.str().size()); ASSERT_EQ(6, oss.str().size());
ASSERT_EQ(string("\x80\x80\x80\x80\xF0\x1F", 6), oss.str()); ASSERT_EQ(string("\x80\x80\x80\x80\xF0\x1F", 6), oss.str());
binary_archive<false> iar{epee::strspan<std::uint8_t>(oss.str())}; const std::string s = oss.str();
binary_archive<false> iar{epee::strspan<std::uint8_t>(s)};
iar.serialize_varint(x1); iar.serialize_varint(x1);
ASSERT_TRUE(iar.good()); ASSERT_TRUE(iar.good());
ASSERT_EQ(x, x1); ASSERT_EQ(x, x1);