summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormadmaxoft <github@xoft.cz>2014-04-24 22:42:33 +0200
committermadmaxoft <github@xoft.cz>2014-04-24 22:42:33 +0200
commit616fb15508187d317a7ca4195667e204faf3749c (patch)
treef65aafc4d6e391a8c03eefeb363a4443e8796689
parentDeclared a SharedPtr that hopefully resolves on all platforms. (diff)
downloadcuberite-616fb15508187d317a7ca4195667e204faf3749c.tar
cuberite-616fb15508187d317a7ca4195667e204faf3749c.tar.gz
cuberite-616fb15508187d317a7ca4195667e204faf3749c.tar.bz2
cuberite-616fb15508187d317a7ca4195667e204faf3749c.tar.lz
cuberite-616fb15508187d317a7ca4195667e204faf3749c.tar.xz
cuberite-616fb15508187d317a7ca4195667e204faf3749c.tar.zst
cuberite-616fb15508187d317a7ca4195667e204faf3749c.zip
-rw-r--r--src/ByteBuffer.cpp9
-rw-r--r--src/ByteBuffer.h2
2 files changed, 6 insertions, 5 deletions
diff --git a/src/ByteBuffer.cpp b/src/ByteBuffer.cpp
index c634dc308..ad753118b 100644
--- a/src/ByteBuffer.cpp
+++ b/src/ByteBuffer.cpp
@@ -171,7 +171,7 @@ cByteBuffer::~cByteBuffer()
-bool cByteBuffer::Write(const char * a_Bytes, size_t a_Count)
+bool cByteBuffer::Write(const void * a_Bytes, size_t a_Count)
{
CHECK_THREAD;
CheckValid();
@@ -187,13 +187,14 @@ bool cByteBuffer::Write(const char * a_Bytes, size_t a_Count)
}
ASSERT(m_BufferSize >= m_WritePos);
size_t TillEnd = m_BufferSize - m_WritePos;
+ const char * Bytes = (const char *)a_Bytes;
if (TillEnd <= a_Count)
{
// Need to wrap around the ringbuffer end
if (TillEnd > 0)
{
- memcpy(m_Buffer + m_WritePos, a_Bytes, TillEnd);
- a_Bytes += TillEnd;
+ memcpy(m_Buffer + m_WritePos, Bytes, TillEnd);
+ Bytes += TillEnd;
a_Count -= TillEnd;
WrittenBytes = TillEnd;
}
@@ -203,7 +204,7 @@ bool cByteBuffer::Write(const char * a_Bytes, size_t a_Count)
// We're guaranteed that we'll fit in a single write op
if (a_Count > 0)
{
- memcpy(m_Buffer + m_WritePos, a_Bytes, a_Count);
+ memcpy(m_Buffer + m_WritePos, Bytes, a_Count);
m_WritePos += a_Count;
WrittenBytes += a_Count;
}
diff --git a/src/ByteBuffer.h b/src/ByteBuffer.h
index 44f43e17f..7656a5b13 100644
--- a/src/ByteBuffer.h
+++ b/src/ByteBuffer.h
@@ -31,7 +31,7 @@ public:
~cByteBuffer();
/// Writes the bytes specified to the ringbuffer. Returns true if successful, false if not
- bool Write(const char * a_Bytes, size_t a_Count);
+ bool Write(const void * a_Bytes, size_t a_Count);
/// Returns the number of bytes that can be successfully written to the ringbuffer
size_t GetFreeSpace(void) const;