diff --git a/src/framework/net/inputmessage.cpp b/src/framework/net/inputmessage.cpp index fa8cca6e..247aacab 100644 --- a/src/framework/net/inputmessage.cpp +++ b/src/framework/net/inputmessage.cpp @@ -38,11 +38,11 @@ void InputMessage::reset() void InputMessage::setBuffer(const std::string& buffer) { int len = buffer.size(); - checkWrite(MAX_HEADER_SIZE + len); - memcpy(m_buffer + MAX_HEADER_SIZE, buffer.c_str(), len); - m_readPos = MAX_HEADER_SIZE; - m_headerPos = MAX_HEADER_SIZE; - m_messageSize = len; + reset(); + checkWrite(len); + memcpy((char*)(m_buffer + m_readPos), buffer.c_str(), len); + m_readPos += len; + m_messageSize += len; } uint8 InputMessage::getU8()