aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/shared')
-rw-r--r--src/server/shared/Packets/ByteBuffer.h22
1 files changed, 15 insertions, 7 deletions
diff --git a/src/server/shared/Packets/ByteBuffer.h b/src/server/shared/Packets/ByteBuffer.h
index abd00078911..296da13dafe 100644
--- a/src/server/shared/Packets/ByteBuffer.h
+++ b/src/server/shared/Packets/ByteBuffer.h
@@ -30,7 +30,7 @@ class MessageBuffer;
class TC_SHARED_API ByteBufferException : public std::exception
{
public:
- ~ByteBufferException() noexcept { }
+ ~ByteBufferException() noexcept = default;
char const* what() const noexcept override { return msg_.c_str(); }
@@ -46,7 +46,7 @@ class TC_SHARED_API ByteBufferPositionException : public ByteBufferException
public:
ByteBufferPositionException(size_t pos, size_t size, size_t valueSize);
- ~ByteBufferPositionException() noexcept { }
+ ~ByteBufferPositionException() noexcept = default;
};
class TC_SHARED_API ByteBuffer
@@ -61,16 +61,24 @@ class TC_SHARED_API ByteBuffer
_storage.reserve(DEFAULT_SIZE);
}
- ByteBuffer(size_t reserve) : _rpos(0), _wpos(0), _bitpos(InitialBitPos), _curbitval(0)
+ // reserve/resize tag
+ struct Reserve { };
+ struct Resize { };
+
+ ByteBuffer(size_t size, Reserve) : _rpos(0), _wpos(0), _bitpos(InitialBitPos), _curbitval(0)
+ {
+ _storage.reserve(size);
+ }
+
+ ByteBuffer(size_t size, Resize) : _rpos(0), _wpos(size), _bitpos(InitialBitPos), _curbitval(0)
{
- _storage.reserve(reserve);
+ _storage.resize(size);
}
ByteBuffer(ByteBuffer&& buf) noexcept : _rpos(buf._rpos), _wpos(buf._wpos),
_bitpos(buf._bitpos), _curbitval(buf._curbitval), _storage(buf.Move()) { }
- ByteBuffer(ByteBuffer const& right) : _rpos(right._rpos), _wpos(right._wpos),
- _bitpos(right._bitpos), _curbitval(right._curbitval), _storage(right._storage) { }
+ ByteBuffer(ByteBuffer const& right) = default;
ByteBuffer(MessageBuffer&& buffer);
@@ -111,7 +119,7 @@ class TC_SHARED_API ByteBuffer
return *this;
}
- virtual ~ByteBuffer() { }
+ virtual ~ByteBuffer() = default;
void clear()
{