openfive-in-row/pissrv/src/Game.cpp
void Game::sendMessage(int player, std::string msg)
{
msg += '\n';
size_t total = msg.size();
char* mem = (char*) alloca(total);
memcpy(mem, msg.data(), msg.size());
mem[msg.size()] = 0; //access invalid memory
write(m_sockets[player], mem, total);
}
proposal:
void Game::sendMessage(int player, std::string msg)
{
msg += '\n';
write(m_sockets[player], msg.c_str(), msg.size());
}