aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Packets/ByteBuffer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/shared/Packets/ByteBuffer.cpp')
-rw-r--r--src/server/shared/Packets/ByteBuffer.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/server/shared/Packets/ByteBuffer.cpp b/src/server/shared/Packets/ByteBuffer.cpp
index 0a911492f85..3785d1c29fa 100644
--- a/src/server/shared/Packets/ByteBuffer.cpp
+++ b/src/server/shared/Packets/ByteBuffer.cpp
@@ -17,11 +17,16 @@
*/
#include "ByteBuffer.h"
+#include "MessageBuffer.h"
#include "Common.h"
#include "Log.h"
#include <sstream>
+ByteBuffer::ByteBuffer(MessageBuffer&& buffer) : _rpos(0), _wpos(0), _storage(buffer.Move())
+{
+}
+
ByteBufferPositionException::ByteBufferPositionException(bool add, size_t pos,
size_t size, size_t valueSize)
{
@@ -69,8 +74,8 @@ void ByteBuffer::textlike() const
o << "STORAGE_SIZE: " << size();
for (uint32 i = 0; i < size(); ++i)
{
- char buf[1];
- snprintf(buf, 1, "%c", read<uint8>(i));
+ char buf[2];
+ snprintf(buf, 2, "%c", read<uint8>(i));
o << buf;
}
o << " ";
@@ -90,7 +95,7 @@ void ByteBuffer::hexlike() const
for (uint32 i = 0; i < size(); ++i)
{
char buf[3];
- snprintf(buf, 1, "%2X ", read<uint8>(i));
+ snprintf(buf, 3, "%2X ", read<uint8>(i));
if ((i == (j * 8)) && ((i != (k * 16))))
{
o << "| ";