In some cases NetworkPacket was created using default constructor and m_data is not properly sized.
This fixed out of bounds memory copy
Also use memcpy instead of std::vector affectation to enhance packet creation
m_datasize = datasize - 2;
m_peer_id = peer_id;
+ m_data.resize(m_datasize);
+
// split command and datas
m_command = readU16(&data[0]);
- m_data = std::vector<u8>(&data[2], &data[2 + m_datasize]);
+ memcpy(&m_data[0], &data[2], m_datasize);
}
const char* NetworkPacket::getString(u32 from_offset)